码迷,mamicode.com
首页 > 移动开发 > 详细

iOS UIViewContentMode详解

时间:2017-09-04 18:59:21      阅读:254      评论:0      收藏:0      [点我收藏+]

标签:mode   orm   css   img   ping   测试   渲染   frame   text   

 技术分享技术分享技术分享技术分享技术分享

根据定义可技术分享以看出 UIViewContentMode UIView的属性,所以这里分别对UIImageViewUIViewUILabelUIButton设置contentMode属性来查看相应效果。

通过测试可以看到,contentMode属性的设置,在视觉上只对UIImageView起作用,对UIViewUILabelUIButton都不起作用。

对于UIView,因为它的子视图都已经设置了自己的frame,位置是固定的,所以这里contentMode不起作用。

对于UILabelUIButton,并没有像预期的一样,通过设置不同的contentMode,而改变UILabelUIButton中文本或图片内容的填充样式。

所以,对于contentMode属性的主要探索就放在了UIImageView上。

先来看看测试过程中得到的所有效果图:

 技术分享

 技术分享

 技术分享

 技术分享

技术分享

typedef NS_ENUM(NSInteger, UIViewContentMode) {

 //默认样式 图片充满整个轮廓,不按比例放大或缩小,图片可能会变形

    UIViewContentModeScaleToFill,

 //图片按比例放大或缩小,直到图片和轮廓中相差比率较小的边长度达到一致,图片一定会拉伸,但不会变形

    UIViewContentModeScaleAspectFit,

 //图片按比例放大或缩小,直到图片和轮廓中相差比率较大的边长度达到一致,图片一定会拉伸,但不会变形

    UIViewContentModeScaleAspectFill,

 //调用setNeedsDisplay方法时,会重新渲染图片,以下操作,图片均不会被拉伸,不变形

    UIViewContentModeRedraw,

    UIViewContentModeCenter,

    UIViewContentModeTop,

    UIViewContentModeBottom,

    UIViewContentModeLeft,

    UIViewContentModeRight,

    UIViewContentModeTopLeft,

    UIViewContentModeTopRight,

    UIViewContentModeBottomLeft,

    UIViewContentModeBottomRight,

};

欢迎各路大神不吝指教、纠正~ 

iOS UIViewContentMode详解

标签:mode   orm   css   img   ping   测试   渲染   frame   text   

原文地址:http://www.cnblogs.com/NINIiOS/p/7474911.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!