首页 > 其他 > 详细

自动布局下的图片比例问题

时间:2016-01-07 07:42:49      阅读:219      评论:0      收藏:0      [点我收藏+]
如图:
   技术分享
 
以一个自定义Cell为例,有图片,文字
    设置图片的时候,会有一种情况是,以屏幕宽度为基准,16:9的图片效果,在自动布局的时候,我们需要设置UIIMageView的上、左、右,宽高比(16:9/4:3)
    设置UILabel的时候,同样设置上,左,右,高度自适应
 
以上设置完毕时,在运行之后,会出现一些意想不到的问题,如:如果图片过大时,会超出cell;UILabel不能正常的换行
 
解决: 
 图片超出:设置属性 UIImageView.clipsToBounds = true 自定剪裁
         图片比例问题:需要手动指定一个宽或者高是定制,然后在代码级别动态进行修改,注意修改的位置xib要在 awakeFormNib(),这个方法中修改
 UILabel自动换行:需要设置属性 preferredMaxLayoutWidth = xxx ,当到达这个数值时,就会自动换行
另外在网上看到也可以这样操作
  - (void)layoutSubViews
{
    [super layoutSubViews];
    self.label.preferredMaxLayoutWidth = self.label.bounds.size.width;
}
当UILabel已经显示到界面上的时候,宽度已经确定了,那么可以直接用这个宽度
备注:这里感觉,自动布局下的【比例】,UILabel的设置,有点坑,都需要代码介入才行,不过在动态计算高度的时候,基于autoLayout的一些第三方框架,还是很有爱的哦!!!

 

自动布局下的图片比例问题

原文:http://www.cnblogs.com/vegetable-bird/p/5108023.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!