没有合适的资源?快使用搜索试试~ 我知道了~
iOS开发中UIImageView控件的常用操作整理
0 下载量 97 浏览量
2020-09-02
22:28:08
上传
评论
收藏 472KB PDF 举报
温馨提示
试读
6页
主要介绍了iOS开发中UIImageView控件的常用操作整理,代码基于传统的Objective-C,需要的朋友可以参考下
资源推荐
资源详情
资源评论
iOS开发中开发中UIImageView控件的常用操作整理控件的常用操作整理
主要介绍了iOS开发中UIImageView控件的常用操作整理,代码基于传统的Objective-C,需要的朋友可以参考下
UIImageView,顾名思义,是用来放置图片的。使用Interface Builder设计界面时,当然可以直接将控件拖进去并设置相关属
性,这就不说了,这里讲的是用代码。
1、创建一个、创建一个UIImageView::
创建一个UIImageView对象有五种方法:
复制代码 代码如下:
UIImageView *imageView1 = [[UIImageView alloc] init]; UIImageView *imageView2 = [[UIImageView alloc] initWithFrame:
(CGRect)]; UIImageView *imageView3 = [[UIImageView alloc] initWithImage:(UIImage *)]; UIImageView *imageView4 =
[[UIImageView alloc] initWithImage:(UIImage *) highlightedImage:(UIImage *)]; UIImageView *imageView5 = [[UIImageView
alloc] initWithCoder:(NSCoder *)];
比较常用的是前边三个。至于第四个,当这个ImageView的highlighted属性是YES时,显示的就是参数highlightedImage,一
般情况下显示的是第一个参数UIImage。
2、、frame与与bounds属性:属性:
上述创建一个UIImageView的方法中,第二个方法是在创建时就设定位置和大小。
当之后想改变位置时,可以重新设定frame属性:
复制代码 代码如下:
imageView.frame = CGRectMake(CGFloat x, CGFloat y, CGFloat width, CGFloat heigth);
注意到UIImageView还有一个bounds属性
复制代码 代码如下:
imageView.bounds = CGRectMake(CGFloat x, CGFloat y, CGFloat width, CGFloat heigth);
那么这个属性跟frame有什么区别呢?
我的理解是,frame设置其位置和大小,而bounds只能设置其大小,其参数中的x、y不起作用即便是之前没有设定frame属
性,控件最终的位置也不是bounds所设定的参数。bounds实现的是将UIImageView控件以原来的中心为中心进行缩放。例如
有如下代码:
复制代码 代码如下:
imageView.frame = CGRectMake(0, 0, 320, 460); imageView.bounds = CGRectMake(100, 100, 160, 230);
执行之后,这个imageView的位置和大小是(80, 115, 160, 230)。
3、、contentMode属性:属性:
这个属性是用来设置图片的显示方式,如居中、居右,是否缩放等,有以下几个常量可供设定:
复制代码 代码如下:
UIViewContentModeScaleToFill UIViewContentModeScaleAspectFit UIViewContentModeScaleAspectFill
UIViewContentModeRedraw UIViewContentModeCenter UIViewContentModeTop UIViewContentModeBottom
UIViewContentModeLeft UIViewContentModeRight UIViewContentModeTopLeft UIViewContentModeTopRight
UIViewContentModeBottomLeft UIViewContentModeBottomRight
注意以上几个常量,凡是没有带Scale的,当图片尺寸超过 ImageView尺寸时,只有部分显示在ImageView中。
UIViewContentModeScaleToFill属性会导致图片变形。UIViewContentModeScaleAspectFit会保证图片比例不变,而且全部显
示在ImageView中,这意味着ImageView会有部分空白。UIViewContentModeScaleAspectFill也会证图片比例不变,但是是填
充整个ImageView的,可能只有部分图片显示出来。
前三个效果如下图:
资源评论
weixin_38736721
- 粉丝: 3
- 资源: 930
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功