UIImageVIew的图片显示模式

这篇博客探讨了UIImageVIew中不同图片显示模式的使用,包括UIViewContentModeScaleToFill、UIViewContentModeScaleAspectFit和UIViewContentModeScaleAspectFill等。其中,ScaleToFill可能导致图片变形,ScaleAspectFit能保持比例且全显但可能留白,而ScaleAspectFill则会填充整个视图,可能部分图片超出显示。

UIImageVIew的图片显示模式

UIImageView 的contentMode这个属性是用来设置图片的显示方式,如居中、居右,是否缩放等,有以下几个常量可供设定:
  • UIViewContentModeScaleToFill
  • UIViewContentModeScaleAspectFit
  • UIViewContentModeScaleAspectFill
  • UIViewContentModeRedraw
  • UIViewContentModeCenter
  • UIViewContentModeTop
  • UIViewContentModeBottom
  • UIViewContentModeLeft
  • UIViewContentModeRight
  • UIViewContentModeTopLeft
  • UIViewContentModeTopRight
  • UIViewContentModeBottomLeft
  • UIViewContentModeBottomRight

注意以上几个常量,凡是没有带Scale的,图片不会缩放,当图片尺寸超过 ImageView尺寸时,只有部分显示在ImageView中。
带有Scale的图片有可能会缩放
  • UIViewContentModeScaleToFill属性会导致图片变形。
  • UIViewContentModeScaleAspectFit会保证图片比例不变,而且全部显示在ImageView中,这意味着ImageView会有部分空白。
  • UIViewContentModeScaleAspectFill也会证图片比例不变,但是是填充整个ImageView的,可能只有部分图片显示出来。

例如:

    //缩放图片, 保证图片适配该控件,图片会变形;
    UIViewContentModeScaleToFill,

    //保持纵横比缩放图片, 保证图片能够适应控件;
    UIViewContentModeScaleAspectFit,      // contents scaled to fit with fixed aspect. remainder is transparent

    //保持纵横比缩放图片, 保证图片能够填充控件,多余部分会被裁剪;
    UIViewContentModeScaleAspectFill,     // contents scaled to fill with fixed aspect. some portion of content may be clipped.

    //单视图的尺寸位置发生变化的时候通过调用setNeedsDisplay方法来重新显示。
    UIViewContentModeRedraw,              // redraw on bounds change (calls -setNeedsDisplay)

    //保持图片原比例在视图中间显示图片内容
    UIViewContentModeCenter,              // contents remain same size. positioned adjusted.

    //保持图片原比例在视图中间顶部显示图片内容
    UIViewContentModeTop,

    //保持图片原比例在视图中间底部显示图片内容
    UIViewContentModeBottom,

    //保持图片原比例在视图中间左边显示图片内容
    UIViewContentModeLeft,

    //保持图片原比例在视图中间右边显示图片内容
    UIViewContentModeRight,

    //保持图片原比例在视图左上角显示图片内容
    UIViewContentModeTopLeft,

    //保持图片原比例在视图右上角显示图片内容
    UIViewContentModeTopRight,

    //保持图片原比例在视图左下角显示图片内容
    UIViewContentModeBottomLeft,

    //保持图片原比例在视图右下角显示图片内容
    UIViewContentModeBottomRight,
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值