[IOS] 使用UIImageView的contentMode属性, 控制图片显示
来源:互联网 发布:php mysql类 编辑:程序博客网 时间:2024/05/18 22:44
今天遇到UIImageView显示问题,查看UIImageView的属性知道,可以通过设置imageView的contentMode属性可以用来控制图片的显示情况。
1
imageView.contentMode = UIViewContentModeCenter;
这个居中是包括了,横向和纵向都是居中。图片不会拉伸或者压缩,就是按照imageView的frame和图片的大小来居中显示的。
这里有两种情况:
1、图片比view的区域更大。这个时候会截取图片的中间部位显示在frame区域里面。
2、图片比view的区域更小。这个时候图片会完整的显示在frame的中间位置。
如果在默认情况,图片的多出来的部分还是会显示屏幕上。如果不希望超过frame的区域显示在屏幕上要设置。clipsToBounds属性。
1
imageView.clipsToBounds = YES;
最后一个问题,在iphone的retina屏幕上面,必须要设置,contentScaleFactor属性。这个属性的默认值是1。二对应的retina屏幕需要是2.可以通过下面的方式来设置:
1
[imageView setContentScaleFactor:[[UIScreen mainScreen] scale]];
但是用:
1
imageView.contentMode = UIViewContentModeCenter;
也有他的问题,就是在图片不规则的时候,而且图片的宽或者高比frame的宽高更小的时候,会出现空白的情况。
为了解决这种问题可以设置:
1
imageView.contentMode = UIViewContentModeScaleAspectFill;
这样图片会拉伸或者压缩以适应frame的边界,而且是适应更小的边,这样可以达成的效果是,图片适应最小的边铺开显示,更大的边会超出frame,如果设置了clipsToBounds属性为YES,那么更大的边就会被截断。这样达成更好的居中显示效果,完整的代码如下:
1
UIImage * image = [UIImage imageNamed:@"iamge.pag"
];
2
UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(100, 100, 100, 100 )];
3
imageView.image = image;
4
imageView.
contentScaleFactor = [[UIScreen mainScreen] scale];5
imageView.contentMode = UIViewContentModeScaleAspectFill;
6
imageView.autoresizingMask = UIViewAutoresizingFlexibleHeight;
7
imageView.clipsToBounds = YES;
0 0
- [IOS] 使用UIImageView的contentMode属性, 控制图片显示
- iOS - UIImageView 的contentMode属性,以及图片拉伸stretchableImageWith
- UIImageView的显示模式(contentMode属性)
- ios开发 - UIImageView 的contentMode属性应用
- ios开发 - UIImageView 的contentMode属性应用
- iOS 【UIKit-UIImageView 的 contentMode 属性概述】
- UIImageview的contentMode属性
- UIImageView 的contentMode属性
- UIImageView的contentMode属性
- UIImageView 的contentMode属性
- UIImageView 的contentMode属性
- UIImageView 的contentMode属性
- UIImageView的ContentMode属性
- UIImageView 的contentMode属性
- UIImageView 的contentMode属性
- UIImageView 的contentMode属性
- iOS图片填充UIImageView(contentMode)
- iOS图片填充UIImageView(contentMode)
- 浅析linux内核内存管理之bootmem allocator
- MATLAB 描图获取坐标
- login
- smtp认证过程
- ubuntu14.04安装apache+php+mysql笔记
- [IOS] 使用UIImageView的contentMode属性, 控制图片显示
- 串的定长顺序存储C语言实现
- 深入浅出JMS--JMS简介
- Oracle how to :查找最消耗资源的sql及session
- POJ 2891 Strange Way to Express Integers 解题报告(中国剩余定理)
- ubuntu/linux 固定ip
- 第六周作业
- java文件对比工具
- 第五届蓝桥杯初赛-史丰收速算