UI组件之UIImage
UIImageView:图像视图,用于在应用程序中显示图片
UIImage:是将图片文件转换为程序中的图片对象
UIImageView是UIImage的载体
方法一:用此方法创建图片对象,会将图片cache到内存中,如果图片很多,用此方法会占用较大内存,而且释放图像的内存也是一件相对麻烦的事,好处在于对一个图像对象只会cache到内存一次,对于图片复用非常好
UIImage *image=[UIImage imageNamed:(NSString *)]
方法二:用此方法创建图片对象,将图片以数据的形式加载到内存中,如果不需要复用图片,或者是一个很大的图片时推荐用此方法
UIImage *image=[UIImage imageWithData:(NSData *)]
方法三:用图片路径创建一个图片对象,一般用于比较大的图片,该方法不会将图片加载到内存,每次调用都是重新加载图片,虽然效率比较低,但是不会占用应用程序的活跃内存
UIImage *image=[UIImage imageWithContentsOfFile:(NSString *)]
获取图片文件的尺寸
CGSize size=image.size;
创建图片视图对象,默认情况下图片会按照imageView的尺寸显示
UIImageView *imageView=[[UIImageView alloc]initWithFrame:CGRectMake(100, 80, 100, 150)];
指定imageview中显示的图片对象
imageView.image=image;
设置图片在图片视图中的格式
imageView.contentMode=UIViewContentModeScaleToFill;
UIViewContentModeScaleAspectFill:图片会被拉伸,短边与imageView相同,图片会在imageview外显示
UIViewContentModeScaleAspectFit:图片会被拉伸,长边与imageview相同,图片一定在imageview中
UIViewContentModeScaleToFill:图片被拉伸(可能会变形)以填满整个imageview
动画的持续时间
imageView.animationDuration=1;
动画重复次数,如果设置0为无限循环
imageView.animationRepeatCount=0;
开始播放动画
[imageView startAnimating];
停止播放动画
[imageView stopAnimating];
获取是否正在播放动画
imageView.isAnimating;
UI组件之UIImage的更多相关文章
- iOS之UI组件整理
作者:神兽gcc 授权本站转载. 最近把iOS里的UI组件重新整理了一遍,简单来看一下常用的组件以及它们的实现.其实现在这些组件都可以通过Storyboard很快的生成,只是要向这些组件能够变得生动起 ...
- Atitit.web ui 组件化 vs mvc
Atitit.web ui 组件化 vs mvc 组件化 与 mvc并不矛盾..单双方适用的地方有所不同.. React推荐以组件的方式去重新思考UI构成,将UI上每一个功能相对独立的模块定 ...
- 这是一个比较全的Android UI 组件
Android组件及UI框架大全 原文地址:http://blog.csdn.net/smallnest/article/details/38658593 Android 是目前最流行的移动操作系统 ...
- AngularJs的UI组件ui-Bootstrap分享(一)
最近几个月学习了AngularJs和扩展的UI组件,并在公司小组内做了一次分享交流,感觉很有收获,在此记录下个人的学习心得. 目录: AngularJs的UI组件ui-Bootstrap分享(一) A ...
- AngularJs的UI组件ui-Bootstrap分享(十四)——Carousel
Carousel指令是用于图片轮播的控件,引入ngTouch模块后可以在移动端使用滑动的方式使用轮播控件. <!DOCTYPE html> <html ng-app="ui ...
- AngularJs的UI组件ui-Bootstrap分享(十三)——Progressbar
进度条控件有两种指令,第一种是uib-progressbar指令,表示单一颜色和进度的一个进度条.第二种是uib-bar和uib-progress指令,表示多种颜色和多个进度组合而成的一个进度条. 这 ...
- AngularJs的UI组件ui-Bootstrap分享(十二)——Rating
Rating是一个用于打分或排名的控件.看一个最简单的例子: <!DOCTYPE html> <html ng-app="ui.bootstrap.demo" x ...
- AngularJs的UI组件ui-Bootstrap分享(十一)——Typeahead
Typeahead指令是一个用于智能提示或自动完成的控件,就像Jquery的AutoComplete控件一样.来看一个最简单的例子: <!DOCTYPE html> <html ng ...
- AngularJs的UI组件ui-Bootstrap分享(十)——Model
Model是用来创建模态窗口的,但是实际上,并没有Model指令,而只有$uibModal服务,创建模态窗口是使用$uibModal.open()方法. 创建模态窗口时,要有一个模态窗口的模板和对应的 ...
随机推荐
- javascript中实现sleep函数
function sleep(d){ for(var t = Date.now();Date.now() - t <= d;);}
- jdbctemplate中的query(sql,params,mapper)与queryForList(sql,params,class)区别
query(sql,params,mapper):是针对自定义对象类型的查询语句,比如: jdbcTrade.query(sql, params, new AMapper()); queryForLi ...
- iOS开发-常用第三方开源框架介绍
iOS开发-常用第三方开源框架介绍 图像: 1.图片浏览控件MWPhotoBrowser 实现了一个照片浏览器类似 iOS 自带的相册应用,可显示来自手机的图片或者是网络图片,可自动从网 ...
- 从C#到Swift,Swift学习笔记
最近在学习IOS,我一直使用的是C#来开发,对Java .C.C++也有一定的了解.最近入手了一台Air,想试着学习IOS开发. 如果你不是C#和Java阵营的,如果你对Swift没有兴趣,就不用往下 ...
- Eclipse 添加书签
Eclipse 添加书签 关于书签 Eclipse 中可以在编辑器的任意一行添加书签. 您可以使用书签作为提示信息,或者使用书签快速定位到文件中的指定的行. 添加书签 如果你想设置书签,你只需要在垂直 ...
- Spring 入门之-dao使用jdbcTemplate(注入过程)
技巧:在为把dataSourc连接池注入到jdbcTemplate里面时,学到一招:按住CTRL 不松,点击相关类名,可以自动跳转或打开. 说明:主要过程, 1.创建UserDao和UserServi ...
- python 循环内部添加多个条件判断会出现越界
1.循环遍历数组是,想添加条件修改时,只删除第一个 # -*- coding: utf-8 -*- a=[11,22,33,44,55] for i in a: if i == 11 or i ==2 ...
- python 爬虫实战1 爬取糗事百科段子
首先,糗事百科大家都听说过吧?糗友们发的搞笑的段子一抓一大把,这次我们尝试一下用爬虫把他们抓取下来. 本篇目标 抓取糗事百科热门段子 过滤带有图片的段子 实现每按一次回车显示一个段子的发布时间,发布人 ...
- linux oracle 配置监听器
参考:http://database.51cto.com/art/201010/231338.htm 服务端: 1.增加一个listener:终端运行: $ORACLE_HOME/bin/netca ...
- Android APK反编译就这么简单 具体解释
在学习Android开发的过程你.你往往会去借鉴别人的应用是怎么开发的,那些美丽的动画和精致的布局可能会让你爱不释手,作为一个开发人员.你可能会非常想知道这些效果界面是怎么去实现的,这时,你便能够对改 ...