iOS系列UI篇——UIImageView
2015-12-09 16:04
363 查看
UIImageView这个东西太重要了,但是用法又及其简单,如果是用于纯展示,那么直接设置图片上去就可以了,如果需要在上面加一些按钮,或者添加手势,就需要将
userInteractionEnabled设置为YES。
上一段代码,基础属性介绍一下
//初始化
_imageView = [[UIImageView alloc] initWithFrame:(CGRectMake(10, 40, screen_width - 20, 200))];
//设背景色
_imageView.backgroundColor = [UIColor redColor];
//设图片
[_imageView setImage:[UIImage imageNamed:@"1"]];因为imageView并没有继承UIControl,所以并不能给他添加点击事件,如果你是在要给他加一个触发事件,就只能创建一个手势给它了。上代码
//设置手势
UIGestureRecognizer * tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapImageView:)];
[_imageView addGestureRecognizer:tap];imageView还有一个鸡肋一样的属性——幻灯片效果。。。。上一段代码。。大家感受一下
//设置动画效果数组
NSArray * images = @[[UIImage imageNamed:@"NBA76人"],[UIImage imageNamed:@"NBA公牛"],[UIImage imageNamed:@"NBA国王"],[UIImage imageNamed:@"NBA湖人"],[UIImage imageNamed:@"NBA灰熊"]];
//设置动画时长及次数
_imageView.animationImages = images;
_imageView.animationDuration = 12;
_imageView.animationRepeatCount = 999999;在刚刚tap点击事件中设置动画开闭
- (void)setImageViewContenMode
{
//设置填充方式
/*
UIViewContentModeScaleToFill, 完全填充,以imageView大小为准,
UIViewContentModeScaleAspectFit, 完整显示图片,以图片长边为准
UIViewContentModeScaleAspectFill, 以图片短边为准,图片可能被截取
UIViewContentModeRedraw, 图片拉伸完全填充
UIViewContentModeCenter, 不拉伸图片,靠imageView中心为准显示
UIViewContentModeTop, 不拉伸图片,图片靠imageView顶边为准显示
UIViewContentModeBottom, 不拉伸图片,靠imageView底边为准显示
UIViewContentModeLeft, 不拉伸图片,靠imageView左边为准显示
UIViewContentModeRight, 不拉伸图片,靠imageView右边为准显示
UIViewContentModeTopLeft, 不拉伸图片,靠imageView左上为准显示
UIViewContentModeTopRight, 不拉伸图片,靠imageView右上为准显示
UIViewContentModeBottomLeft, 不拉伸图片,靠imageView左下为准显示
UIViewContentModeBottomRight, 不拉伸图片,靠imageView右下为准显示
*/
_imageView.contentMode = UIViewContentModeScaleAspectFit;
}
userInteractionEnabled设置为YES。
上一段代码,基础属性介绍一下
//初始化
_imageView = [[UIImageView alloc] initWithFrame:(CGRectMake(10, 40, screen_width - 20, 200))];
//设背景色
_imageView.backgroundColor = [UIColor redColor];
//设图片
[_imageView setImage:[UIImage imageNamed:@"1"]];因为imageView并没有继承UIControl,所以并不能给他添加点击事件,如果你是在要给他加一个触发事件,就只能创建一个手势给它了。上代码
//设置手势
UIGestureRecognizer * tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapImageView:)];
[_imageView addGestureRecognizer:tap];imageView还有一个鸡肋一样的属性——幻灯片效果。。。。上一段代码。。大家感受一下
//设置动画效果数组
NSArray * images = @[[UIImage imageNamed:@"NBA76人"],[UIImage imageNamed:@"NBA公牛"],[UIImage imageNamed:@"NBA国王"],[UIImage imageNamed:@"NBA湖人"],[UIImage imageNamed:@"NBA灰熊"]];
//设置动画时长及次数
_imageView.animationImages = images;
_imageView.animationDuration = 12;
_imageView.animationRepeatCount = 999999;在刚刚tap点击事件中设置动画开闭
- (void)tapImageView:(UIGestureRecognizer *) gesture { //开始结束 if (show == NO) { //开始动画 [_imageView startAnimating]; } else { //结束动画 [_imageView stopAnimating]; } show = !show; }说实话,这个用处大概只能用到多广告滚动图,但是没人会用这个做广告滚动图。。。。毕竟有scrollerView和NSTimer。。。。。最后来段比较实用的代码,可以根据自己的需求,对图片显示进行设置
- (void)setImageViewContenMode
{
//设置填充方式
/*
UIViewContentModeScaleToFill, 完全填充,以imageView大小为准,
UIViewContentModeScaleAspectFit, 完整显示图片,以图片长边为准
UIViewContentModeScaleAspectFill, 以图片短边为准,图片可能被截取
UIViewContentModeRedraw, 图片拉伸完全填充
UIViewContentModeCenter, 不拉伸图片,靠imageView中心为准显示
UIViewContentModeTop, 不拉伸图片,图片靠imageView顶边为准显示
UIViewContentModeBottom, 不拉伸图片,靠imageView底边为准显示
UIViewContentModeLeft, 不拉伸图片,靠imageView左边为准显示
UIViewContentModeRight, 不拉伸图片,靠imageView右边为准显示
UIViewContentModeTopLeft, 不拉伸图片,靠imageView左上为准显示
UIViewContentModeTopRight, 不拉伸图片,靠imageView右上为准显示
UIViewContentModeBottomLeft, 不拉伸图片,靠imageView左下为准显示
UIViewContentModeBottomRight, 不拉伸图片,靠imageView右下为准显示
*/
_imageView.contentMode = UIViewContentModeScaleAspectFit;
}
相关文章推荐
- 关于SOAPUI使用的技能
- 通过Fragments建立动态的界面 (UI)
- The type javax.servlet.ServletContext cannot be resolved. It is indirectly referenced from required
- 10_15.c先阻塞SIGQUIT信号,再释放。
- vector<struct st_jn_record_plan_week_info> *infoS = &m_PlanInfo[info[i].SubEquId];
- SQL Server2012中的SequenceNumber尝试
- UI -知识点回顾 三
- UIImageView常用属性
- easyui 正则验证电话号码的简单例子
- 【Solutions系列】As-Built Editing,属性编辑实用工具
- Android Studio 运行时出现 finished with non-zero exit value 2
- 在MySQL中创建实现自增的序列(Sequence)的教程
- 夺命雷公狗---PDO NO:6 使用PDO执行SQL语句之query
- 通过@Value注解读取.properties配置内容
- UIButton
- 自定义BlockingQueue的简单实现(含测试)
- UE正则表达式
- UILabel
- 9、osgGA::GUIEventHandler,osgFX::Scribe
- request使用getReader()和getInputStream()获取请求参数报400错误