UI基础视图----UIImageView总结
UIImageView和UILabel一样,也是UIKit框架中非常常用的视图类。继承关系和UILabel完全一致(都是继承于UIView),功能也相似(用户交互都默认为关,主要用于展示),只不过UIImageView用于展示图片,UILabel用于展示文字。
UIImageView主要用于展示两种图片,一种是静态图片,也是最基础的用法,另一种是动态图片(一组图片产生的动画效果)。所以UIImageView除了可以使用从UIView继承下来的动画效果外,还可以使用自己的动画效果(显然自己的更常用)。
所以,UIImageView主要功能就是展示图片,展示类型有两种,一种是单独一张图片(静态),一种是一组图片(动态),可以使用UIImageView制作一个gif动图。
0:准备图片
首先添加三张本地图片
/**
* 0:准备图片
*/
- (void)prepareImage
{
self.image1 = [UIImage imageNamed:@"apple1"];
self.image2 = [UIImage imageNamed:@"apple2"];
self.image3 = [UIImage imageNamed:@"apple3"];
}
1:静态图片展示
静态图片其实就是给UIImageView的image属性赋值。
注意:在实例化UIImageView的时候,使用initWithImage:进行实例化,或者后面设置image属性,而不再设置imageView的frame,imageView直接使用image的frame,那么,有两种情况:一是image本身比较小,那么就会按照image的frame大小显示。而如果image的frame太大,可能就会不显示,遇到这个问题可以使用frame初始化再设置属性image。
/**
* 1:静态图片展示
*/
- (void)staticImageShow
{
//1:UIImageView自己独有的初始化方法
self.imageView1 = [[UIImageView alloc] initWithImage:self.image1];
//2:这里imageView1的frame如果不设置,imageView1的frame就会默认为image1的frame,(在image1的frame小于屏幕的情况下),根据需要设置
self.imageView1.frame = CGRectMake(, , , );//设置frame属性,从UIView继承过来的属性
self.imageView1.image = self.image2;//imageView1的图片可以通过image后期进行设置
//3:用户交互属性
self.imageView1.userInteractionEnabled = YES;//,默认是NO,如果需要加手势要设置为YES
[self.view addSubview:self.imageView1];//父视图来添加子视图
}
2:动态图片展示
其实就是加了一组图片到数组里,然后设置动画时间和重复次数,然后开启动画。
注意:动画必须手动开启。
/**
* 2:动态图片展示
*/
- (void)dynamicImageShow
{
//1:使用从UIView继承来的方法实例化
self.imageView2 = [[UIImageView alloc] initWithFrame:CGRectMake(, , , )];
//2:设置属性animationImages,是一个数组
self.imageView2.animationImages = @[self.image1, self.image2, self.image3];
self.imageView2.animationRepeatCount = ;//动画重复次数,默认是0(切记:0是无穷大),默认会无限重复
self.imageView2.animationDuration = ;//设置一次动画持续的时间。
[self.imageView2 startAnimating];//开启动画,动画必须手动开启
// [self.imageView2 stopAnimating];//关闭动画,可以在需要的时候手动关闭
[self.view addSubview:self.imageView2];
}
最终显示效果为:上面一张静态图,下面一张类似于gif的动态图。
UI基础视图----UIImageView总结的更多相关文章
- UI基础视图----UIWebView总结
UIWebView是UIKit框架中继承于UIView的一个常用的基础视图,和UILabel,UIImageView是兄弟类,用于展示一个网页. UIWebView是一个可以设置代理的类,在加载的不同 ...
- UI基础视图----UIView总结
UIView是UIKit框架里面最基础的视图类,是UIResponder的子类,是UIApplication和UIViewController的兄弟类,是UIWindow,UILabel,UIImag ...
- IOS开发-UI基础-视图
//------------------------------UIWindow--------------------------// 1.UIWindow:是 UIView 的子类,用于管理.协调 ...
- UI基础视图----UIScrollView总结
UIScrollView是UIKit框架下的很重要的视图类,是UIView的子类.UILabel,UIImageView,UIWebView分别用于展示文字,图片,网页,UILabel通过属性text ...
- UI基础视图----UILabel总结
UILabel是UIKit框架中非常常用的视图类,是UIView的子类,是UIWindow,UIImageView等的兄弟类,因为继承自UIView,所以继承了UIView中的属性和方法,大部分都可以 ...
- UI基础:视图控制器.屏幕旋转.MVC 分类: iOS学习-UI 2015-07-02 22:21 62人阅读 评论(0) 收藏
UIViewController 视图控制器,继承自UIResponder,作用:管理视图并且响应事件 功能: 1.分担APPdelegate的工作 2.实现模块独立,能提高复用性 创建UIViewC ...
- UI基础UIButton
UI基础UIButton 前面写了UIWindow.UIViewController,那些都是一些框架,框架需要填充上具体的view才能组成我们的应用,移动应用开发中UI占了很大一部分,最基础的UI实 ...
- iOS开发UI基础—手写控件,frame,center和bounds属性
iOS开发UI基础—手写控件,frame,center和bounds属性 一.手写控件 1.手写控件的步骤 (1)使用相应的控件类创建控件对象 (2)设置该控件的各种属性 (3)添加控件到视图中 (4 ...
- Android UI基础教程 目录
从csdn下载了这本英文版的书之后,又去京东搞了一个中文目录下来.对照着看. 话说,这本书绝对超值.有money的童鞋看完英文版记得去买中文版的~~ Android UI基础教程完整英文版 pdf+源 ...
随机推荐
- poj3685 二分套二分
F - 二分二分 Crawling in process... Crawling failed Time Limit:6000MS Memory Limit:65536KB 64bit ...
- web标准(复习)--4 纵向导航菜单及二级弹出菜单
今天我们开始学习纵向导航菜单及二级弹出菜单,包含以下内容和知识点: 纵向列表 标签的默认样式 css派生选择器 css选择器的分组 纵向二级列表 相对定位和绝对定位 一.纵向列表纵向列表或称为纵向导航 ...
- 转载:JAVA中使用JSON进行数据传递
转载网址:http://www.cnblogs.com/undead/archive/2012/07/18/2594900.html 最近在做一个基于JAVA Servlet的WEB应用以及对应的An ...
- 编译protobuf-2.5.0中的错误处理
最近在编译protobuf-2.5.0源码的时候发现的错误已经应对方法 1. 在源码目录执行 ./configure 命令的时候,发生如下错误 error: C++ preprocessor &quo ...
- HTML&CSS基础学习笔记1.13—无序列表
无序列表 有时我们的工作繁忙,杂事很多,怕忘记,就会把事情一件件列出来,防止忘记. 它们的排列顺序对于我们来说并不重要,可以随意调换,我们将它称为无序列表,HTML里用<ul>标签来表示无 ...
- Python读取Yaml文件
近期看到好多使用Yaml文件做为配置文件或者数据文件的工程,随即也研究了下,发现Yaml有几个优点:可读性好.和脚本语言的交互性好(确实非常好).使用实现语言的数据类型.有一个一致的数据模型.易于实现 ...
- Effective Java Item3:Enforce the singleton property with a private constructor or an enum type
Item3:Enforce the singleton property with a private constructor or an enum type 采用枚举类型(ENUM)实现单例模式. ...
- 瞬态抑制二极管TVS的基本知识
二极管是大家熟悉的元件,但瞬态抑制二极管就可能不太熟悉了.本文将介绍这种特殊二极管的用途. 工作原理等基本知识.各种电子设备中的各种半导体器件,一般都在直流低电压范围各作;如果在电源中串入一个瞬间上百 ...
- Qt使用MinGW编译,如何忽略警告
Qt编译时经常出现以下警告: warning: unused parameter 'arg1' [-Wunused-parameter] warning: unused variable 'i' [- ...
- CentOS6.5切换 语言(附带6.5官方下载地址)
1 在终端中输入命令[sudo vim /etc/sysconfig/i18n]来编辑i18n文件, 2 把“zh_CN.UTF-8”修改为“en_US.UTF-8”, 3 保存修改并退出,如果提示这 ...