84669 personnes étudient
152542 personnes étudient
20005 personnes étudient
5487 personnes étudient
7821 personnes étudient
359900 personnes étudient
3350 personnes étudient
180660 personnes étudient
48569 personnes étudient
18603 personnes étudient
40936 personnes étudient
1549 personnes étudient
1183 personnes étudient
32909 personnes étudient
给imageView如何设置约束才能让他显示图片原来正确的比例(不是固定宽度,然后根据图片比例,设置宽高比例约束等比缩放那种),,,图片的比例事先未知,,可以做到吗?
认证高级PHP讲师
imageView.contentMode = UIViewContentModeScaleAspectFit;
这个是可以的。 第一种情况:使用本地图片, ` UIImageView *fenxiangImageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"fenxiang"]]; NSLogFloat(fenxiangImageView.frameSizeWidth); NSLogFloat(fenxiangImageView.frameSizeHeight); [self.view addSubview:fenxiangImageView];
[fenxiangImageView mas_makeConstraints:^(MASConstraintMaker *make) { make.left.equalTo(self.view.mas_left).offset(15); make.top.equalTo(self.view.mas_top).offset(100); }];
![图片描述][1] 可以看到图片宽高准确的打印出来了。然后你可以根据自己定的宽度,来等比缩放图片的高度就行了。 第二种情况:网络请求的图片, UIImageView *urlImageView = [[UIImageView alloc] initWithImage:[UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:@"url"]]]]; NSLogFloat(urlImageView.frameSizeWidth); NSLogFloat(urlImageView.frameSizeHeight); [self.view addSubview:urlImageView];
![图片描述][1] 可以看到图片宽高准确的打印出来了。然后你可以根据自己定的宽度,来等比缩放图片的高度就行了。 第二种情况:网络请求的图片,
[urlImageView mas_makeConstraints:^(MASConstraintMaker *make) { make.left.equalTo(self.view.mas_left).offset(15); make.top.equalTo(self.view.mas_top).offset(100); }];
` ![图片宽高][2] 同第一种情况一样,知道原始图片宽高后,你就可以按自己的宽度等比缩放高度了。
这个是可以的。
第一种情况:使用本地图片,
` UIImageView *fenxiangImageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"fenxiang"]];
NSLogFloat(fenxiangImageView.frameSizeWidth);
NSLogFloat(fenxiangImageView.frameSizeHeight);
[self.view addSubview:fenxiangImageView];
![图片描述][1] 可以看到图片宽高准确的打印出来了。然后你可以根据自己定的宽度,来等比缩放图片的高度就行了。 第二种情况:网络请求的图片,
UIImageView *urlImageView = [[UIImageView alloc] initWithImage:[UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:@"url"]]]];NSLogFloat(urlImageView.frameSizeWidth);
NSLogFloat(urlImageView.frameSizeHeight);
[self.view addSubview:urlImageView];
`
![图片宽高][2]
同第一种情况一样,知道原始图片宽高后,你就可以按自己的宽度等比缩放高度了。