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总结的更多相关文章

  1. UI基础视图----UIWebView总结

    UIWebView是UIKit框架中继承于UIView的一个常用的基础视图,和UILabel,UIImageView是兄弟类,用于展示一个网页. UIWebView是一个可以设置代理的类,在加载的不同 ...

  2. UI基础视图----UIView总结

    UIView是UIKit框架里面最基础的视图类,是UIResponder的子类,是UIApplication和UIViewController的兄弟类,是UIWindow,UILabel,UIImag ...

  3. IOS开发-UI基础-视图

    //------------------------------UIWindow--------------------------// 1.UIWindow:是 UIView 的子类,用于管理.协调 ...

  4. UI基础视图----UIScrollView总结

    UIScrollView是UIKit框架下的很重要的视图类,是UIView的子类.UILabel,UIImageView,UIWebView分别用于展示文字,图片,网页,UILabel通过属性text ...

  5. UI基础视图----UILabel总结

    UILabel是UIKit框架中非常常用的视图类,是UIView的子类,是UIWindow,UIImageView等的兄弟类,因为继承自UIView,所以继承了UIView中的属性和方法,大部分都可以 ...

  6. UI基础:视图控制器.屏幕旋转.MVC 分类: iOS学习-UI 2015-07-02 22:21 62人阅读 评论(0) 收藏

    UIViewController 视图控制器,继承自UIResponder,作用:管理视图并且响应事件 功能: 1.分担APPdelegate的工作 2.实现模块独立,能提高复用性 创建UIViewC ...

  7. UI基础UIButton

    UI基础UIButton 前面写了UIWindow.UIViewController,那些都是一些框架,框架需要填充上具体的view才能组成我们的应用,移动应用开发中UI占了很大一部分,最基础的UI实 ...

  8. iOS开发UI基础—手写控件,frame,center和bounds属性

    iOS开发UI基础—手写控件,frame,center和bounds属性 一.手写控件 1.手写控件的步骤 (1)使用相应的控件类创建控件对象 (2)设置该控件的各种属性 (3)添加控件到视图中 (4 ...

  9. Android UI基础教程 目录

    从csdn下载了这本英文版的书之后,又去京东搞了一个中文目录下来.对照着看. 话说,这本书绝对超值.有money的童鞋看完英文版记得去买中文版的~~ Android UI基础教程完整英文版 pdf+源 ...

随机推荐

  1. unity中数据的持久化存储

    unity 提供了PlayerPrefs这个类用于存储游戏数据到电脑硬盘中. 这个类有10个函数可以使用 Class Functions类函数 SetInt Sets the value of the ...

  2. OpenGL ES 2.0 顶点着色器的妙用

    1.飘扬的旗帜(水面起伏) 基本原理 绘制一帧画面时由顶点着色器根据一定的规则变换各个顶点的位置,即可得到旗帜迎风飘扬的效果. 为了使旗帜的飘动过程比较平滑,采用基于正弦曲线的顶点位置变换规则.

  3. python之6-5偏函数

    functools.partial 偏函数的作用是简化操作,简化什么操作呢?就是当我们有一个已知函数A,且这个函数包含有某个或多个参数A1,通过固定这个参数A1,我们可以自己编写一个新函数B,来减少代 ...

  4. java并发编程_基本模块构建

    读<java并发编程实战>第五章学习记录:该章节主要介绍一些并发编程中一些基本的构建模块.如并发容器和并发工具类(闭锁和栅栏)以及一些需要注意的情况 并发容器 1. ConcurrentH ...

  5. 蚁群算法matlab实现

    大家好,我是小鸭酱,博客地址为:http://www.cnblogs.com/xiaoyajiang 以下用matlab实现蚁群算法:   %蚂蚁算法test   %用产生的一个圆上的十个点来检验蚂蚁 ...

  6. data语意学

    引例: class X{}; class Y:public virtual X{}; class Z:public virtual X{}; class A:public Y,public Z{}; ...

  7. JTA

    http://blog.csdn.net/hengyunabc/article/details/19433947

  8. Chaos Software Google Sync v10.1.1.0 和Syncovery Pro

    Chaos Software Google Sync v10.1.1.0 Release: Chaos.Software.Google.Sync.v10.1.1.0.Incl.Keygen-BEANS ...

  9. zoj2314 经典 无源汇有上下界最大流 并输出可行流

    ZOJ Problem Set - 2314 Reactor Cooling Time Limit: 5 Seconds      Memory Limit: 32768 KB      Specia ...

  10. bzoj4003

    http://www.lydsy.com/JudgeOnline/problem.php?id=4003 可合并堆. 每个点都有一个小根堆,记住可以到这个点的骑士有哪些,以战斗力为关键字. 从底层到顶 ...