iOS 图片自适应需求控制

1.在开发当中有时会有这样的需求,将从服务器端下载下来的图片添加到imageView 当中展示,但是下载下来的图片尺寸大小不固定,宽高也有可能不成比例 如果直接设置imageView的image属性而不设置contentMode那么图片会默认填满整个容器,导致图片变形,影响美观.

这个时候就需要我们进行图片自适应处理技术了iOS处理图片主要是用到 UIViewContentMode这个属性。

iOS UIview 的 @interfaceUIView(UIViewRendering) 

@property(nonatomic)                UIViewContentModecontentMode;                // default is UIViewContentModeScaleToFill

typedefNS_ENUM(NSInteger,UIViewContentMode)

 {//图片拉伸填充至整个UIImageView(图片可能会变形),这也是默认的属性,如果什么都不设置就是它在起作用UIViewContentModeScaleToFill,

//图片拉伸至完全显示在UIImageView里面为止(图片不会变形)

UIViewContentModeScaleAspectFit,

//图片拉伸至图片的的宽度或者高度等于UIImageView的宽度或者高度为止.看图片的宽高哪一边最接近UIImageView的宽高,一个属性相等后另一个就停止拉伸.

UIViewContentModeScaleAspectFill,

//调用setNeedsDisplay 方法时,就会重新渲染图片//下面的属性都是不会拉伸图片的

UIViewContentModeRedraw,//中间模式UIViewContentModeCenter,//

顶部UIViewContentModeTop,

//底部UIViewContentModeBottom,

//左边UIViewContentModeLeft,

//右边UIViewContentModeRight,

//左上UIViewContentModeTopLeft,

//右上UIViewContentModeTopRight,

//左下UIViewContentModeBottomLeft,

//右下UIViewContentModeBottomRight,

};

//用法示例

self.imageview.contentMode =UIViewContentModeScaleAspectFill;

你可能感兴趣的:(iOS 图片自适应需求控制)