UIImageView是在界面上显示图片的一个控件,在UIImageView中显示图片的话应该首先把图片加载到UIImage中,然后通过其他方式使用该UIImage。

创建UIImageView有两种方法:

一种是用UIImage来加载:
UIImage *image = [UIImageimageNamed:@"picture"];
UIImageView *imageView = [[UIImageView alloc] initWithImage:image];

另一种是通过initWithFrame:来加载,然后手工修改UIImageView的属性:

UIImageView *imageView = [[UIImageView alloc] initWithImage:@"picture"];

    //这里我用了第一种方法
UIImage *image = [UIImage imageNamed:@"u=2255024074,2191209375&fm=21&gp=0"];
//初始化
UIImageView *imageView = [[UIImageView alloc] initWithImage:image];
[self.view addSubview:imageView];
//背景颜色
imageView.backgroundColor = [UIColor blueColor];
//圆角
imageView.layer.cornerRadius = ;
imageView.layer.masksToBounds = YES;
//是否交互
imageView.userInteractionEnabled = YES;
//宽与高分别采用原图片的宽与高
float width = imageView.frame.size.width;
float height = imageView.frame.size.height;
//设置imageView的位置与尺寸
CGRect frame = imageView.frame;
frame.origin.x = ;
frame.origin.y = ;
frame.size.width = width;
frame.size.height = height;
[imageView setFrame:frame];

UIImageView的几种常用属性:

(1)设置圆角

imageView.layer.masksToBounds = YES;

imageView.layer.cornerRadius = 10;

(2)设置边框颜色和大小

imageView.layer.borderColor = [UIColor orangeColor];

imageView.layer.borderWidth = 2;

(3)contentMode属性:当图片小于imageView的大小处理图片显示

这个属性是用来设置图片的显示方式,如居中、居右,是否缩放等,有以下几个常量可供设定:

UIViewContentModeScaleAspectFit:这个图片都会在view里面显示,并且比例不变,这就是说,如果图片和view的比例不一样就会有留白。

UIViewContentModeScaleAspectFill: 这是整个view会被图片填满,图片比例不变 ,这样图片显示就会大于view。

UIViewContentModeCenter ;UIViewContentModeTop;UIViewContentModeBottom;UIViewContentModeLeft;UIViewContentModeRight;

UIViewContentModeTopLeft;UIViewContentModeTopRight;UIViewContentModeBottomLeft;UIViewContentModeBottomRight(这几种就不一一解

释了,都是保持图片比例不变)。

(4)为图片添加单击事件:一定要先将userInteractionEnabled置为YES,这样才能响应单击事件

imageView.userInteractionEnabled = YES;

UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(ImageViewAction:)];

[imageView addGestureRecognizer:tap];

- (void)ImageViewAction:(UITapGestureRecognizer *)gesture{

imageView.backgroundColor = [UIColor yellowColor];

}

(5)播放一系列图片

UIImage *image1 = [UIImage imageNamed:@"p1"];

UIImage *image2 = [UIImage imageNamed:@"p2"];

UIImage *image3 = [UIImage imageNamed:@"p3"];

NSArray *imagesArray = @[image1,image2,image3];

imageView.animationImages = imagesArray;

//设定所有的图片在多少秒内播放完毕

imageView.animationDuration = [imagesArray count];

//不重复播放多少遍,0表示无数遍

imageView.animationRepeatCount = 0;

// 开始播放

[imageView startAnimating];

ios基础篇(二)——UIImageView的常见用法的更多相关文章

  1. iOS基础篇(十七)——UIGestureRecognizer用法

    UIGestureRecognizer(手势识别)在iOS 中非常重要,他极大地提高了移动设备的使用便捷性: 在3.2之前是主要使用的是由UIResponder而来的如下4种方式: - (void)t ...

  2. php基础篇-二维数组排序 array_multisort

    原文:php基础篇-二维数组排序 array_multisort 对2维数组或者多维数组排序是常见的问题,在php中我们有个专门的多维数组排序函数,下面简单介绍下: array_multisort(a ...

  3. iOS开发多线程篇 08 —GCD的常见用法

    iOS开发多线程篇—GCD的常见用法 一.延迟执行 1.介绍 iOS常见的延时执行有2种方式 (1)调用NSObject的方法 [self performSelector:@selector(run) ...

  4. JavaScript笔记基础篇(二)

    基础篇主要是总结一些工作中遇到的技术问题是如何解决的,应为本人属于刚入行阶段技术并非大神如果笔记中有哪些错误,或者自己的一些想法希望大家多多交流互相学习. 1.ToFixed()函数 今天在做Birt ...

  5. layui(二)——layer组件常见用法总结

    layer是layui的代表作,功能十分强大,为方便以后快速配置这里对其常见用法做了简单总结 一.常用调用方式 //1.普通消息:alert(content,[options],[yesCallBac ...

  6. Hybrid APP基础篇(二)->Native、Hybrid、React Native、Web App方案的分析比较

    说明 Native.Hybrid.React.Web App方案的分析比较 目录 前言 参考来源 前置技术要求 楔子 几种APP开发模式 概述 Native App Web App Hybrid Ap ...

  7. docker+k8s基础篇二

    Docker+K8s基础篇(二) docker的资源控制 A:docker的资源限制 Kubernetes的基础篇 A:DevOps的介绍 B:Kubernetes的架构概述 C:Kubernetes ...

  8. Python基础篇(二)_基本数据类型

    Python基础篇——基本数据类型 数字类型:整数类型.浮点数类型.复数类型 整数类型:4种进制表示形式:十进制.二进制.八进制.十六进制,默认采用十进制,其他进制需要增加引导符号 进制种类 引导符号 ...

  9. ios基础篇(五)——UITextField的详细使用

    UItextFieldField通常用于外部数据输入,以实现人机交互. 以下是UItextFieldField的属性及常见用法: 1.textField :设置文本框的默认文本. 2.Placehol ...

  10. Qt入门之基础篇 ( 二 ) :Qt项目建立、编译、运行和发布过程解析

    转载请注明出处:CN_Simo. 题解: 本篇内容主讲Qt应用从创建到发布的整个过程,旨在帮助读者能够快速走进Qt的世界. 本来计划是讲解Qt源码静态编译,如此的话读者可能并不能清楚地知道为何要静态编 ...

随机推荐

  1. ServiceStack.OrmLite 笔记9 -code first 必须的代码优先

    复杂点的使用3 code first的使用,支持复杂类型 public enum PhoneType { Home, Work, Mobile, } public enum AddressType { ...

  2. 线程入门之sleep

    package com.thread; /** * <sleep:使线程休眠一些时间> * <功能详细描述> * * @author 95Yang */ public clas ...

  3. jQuery 中$(this).parent().parent().remove()无效。

    在写文章系统的删除功能.需要删除一行数据.在删除的页面,需要jQuery 删除一hang. 局部刷新数据. $(".del").click(function(){ var id = ...

  4. android上让我放弃使用wstring来操作中英文字符串 转

    android上让我放弃使用wstring来操作中英文字符串 2013-08-07 16:37:24|  分类: cocos2d|举报|字号 订阅     项目需要,需要对中英文字符串进行遍历修改等, ...

  5. linux终端vi同时显示多个文件的分屏操作及切换操作

    以前看到那边分屏操作的觉得很高端,现在初步整理了一下. 这里不是那个用代码实现的分屏,完全属于linux的操作命令 一.打开并显示文件 1.打开 这个不用说了,就是vi xx.c,或者vi xx1.c ...

  6. [转]-Android Studio 快捷键整理分享-SadieYu

    文章编辑整理:Android Studio 中文组 - SadieYu Alt+回车 导入包,自动修正 Ctrl+N   查找类 Ctrl+Shift+N 查找文件 Ctrl+Alt+L  格式化代码 ...

  7. poj1971Parallelogram Counting

    链接 越来越感觉到了数学的重要性!.. 这题本来用以斜率和长度为key值进行hash不过感觉很麻烦还TLE了.. 最后知道中点一样的话就可以组成平行四边形,初中数学就可以了.. #include &l ...

  8. Docker-创建一个mysql容器,并保存为本地镜像

    查找docker hub上的镜像 [root@wls12c ~]$ docker search mysql NAME DESCRIPTION STARS OFFICIAL AUTOMATED mysq ...

  9. Android软键盘弹出时把布局顶上去的解决方法

    原文: 解决Andriod软键盘出现把原来的布局给顶上去的方法(转) 链接:http://blog.sina.com.cn/s/blog_9564cb6e0101g2eb.html 决方法,在main ...

  10. spring中的Log4jConfigListener作用和webapp.root的设置

    转:http://blog.sina.com.cn/s/blog_7bbf356c01016wld.html 使用spring中的Log4jConfigListener有如如下好处:     1. 动 ...