有没有办法在Interface Builder/storyboard中自动调整UIImageView的大小?
问题描述:
当您在故事板或界面生成器中为uiimageview设置图像时,它保留原始UIImageView
的形状,这意味着图像本身完全失真。有没有办法在Interface Builder/storyboard中自动调整UIImageView的大小?
要将UIImageView
的大小与其图片匹配,我必须从文件检查器手动输入大小。
UIImageView
是否有办法自动检测其图像的原始大小并相应地调整自己的大小?
答
我假设你指的是布局情节提要/ IB。要获取图像的原始大小,只需选择图像,然后在键盘上按命令 + =。在重新调整大小时,按比例重新调整大小并按住Shift键。
答
使用contentMode
imageView.contentMode = UIViewContentModeScaleAspectFit;
编辑: 我刚才看到你似乎要调整imageViews尺寸的图像....不同,那么
答
你为什么不设置代码中你的uiimageview的大小? 这里有您需要做什么......
//get the Image
UIImage *img = [UIImage imageNamed:@"img.png"];
CGFloat x = img.origin.x;
CGFloat y = img.origin.y;
CGFloat width = img.size.width;
CGFloat height = img.size.height;
imageView.frame = CGRectMake(x, y, width, height); //imageView is your uiimageview's reference
答
这是我做过什么:
imageView.clipsToBounds = YES;
[imageView setContentMode: UIViewContentModeScaleAspectFit];
这是为我工作。
伟大的捷径!有没有办法将图像设置为原始大小的一半(对于@ 2x视网膜图像)? – zakdances 2012-08-15 10:26:50
除非你做一些不寻常的事情,否则你不需要考虑视网膜分辨率。 iOS会自动以正确的大小替换@ 2x图像。只需使用IB中的非视网膜图像即可。 – 2012-10-17 17:13:48
这是一个很棒的倍频程序,谢谢。 – 2013-01-28 15:24:42