84669 orang belajar
152542 orang belajar
20005 orang belajar
5487 orang belajar
7821 orang belajar
359900 orang belajar
3350 orang belajar
180660 orang belajar
48569 orang belajar
18603 orang belajar
40936 orang belajar
1549 orang belajar
1183 orang belajar
32909 orang belajar
给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]
同第一种情况一样,知道原始图片宽高后,你就可以按自己的宽度等比缩放高度了。