封装思想:将相同的重复东西保存到方法里,不同的东西用参数代替。不相同的东西交给方法调用者,相同东西自己搞定。

一、UIButton和UIImageView的区别

1.显示图片

1> UIImageView只能显示一种图片(图片默认会填充整个UIImageView)  image\setImage:

2> UIButton能显示2种图片

* 背景 (背景会填充整个UIButton)  setBackroungImage:forState:

* 前置(覆盖在背景上面的图片,按照之前的尺寸显示)  setImage:forState:

* 还能显示文字

2.点击事件

1> UIImageView默认是不能响应点击事件

2> UIButton能响应点击事件 : addTarget:action:forControlEvents:

3.使用场合

1> UIImageView : 只显示图片,不监听点击,点击了图片后不做任何反应

2> UIButton : 既显示图片,又监听点击,点击了图片后做一些其他事情

4.继承结构

1> UIButton之所以能添加监听器来监听事件,是因为它继承自UIControl

2> UIImagevIew之所以不能添加监听器来监听事件,是因为它直接继承自UIView

二、UIImageView的帧动画

@property(nonatomic,copy) NSArray *animationImages; // 设置需要播放的图片(到时会按照数组顺序播放)

@property(nonatomic) NSTimeInterval animationDuration; // 动画的持续时间

@property(nonatomic) NSInteger animationRepeatCount;  // 动画的执行次数(默认情况下是无限重复执行)

- (void)startAnimating; // 开始动画

- (void)stopAnimating;  // 停止动画

- (BOOL)isAnimating; // 是否正在执行动画

三、格式符补充

%03d : 每个整数占据3个位置,多出的位置用0填充

比如:

* [NSString stringWithFormat:@"%03d", 0];  返回的是@"000"

* [NSString stringWithFormat:@"%03d", 1];  返回的是@"001"

* [NSString stringWithFormat:@"%03d", 12];  返回的是@"012"

* [NSString stringWithFormat:@"%03d", 123];  返回的是@"123"

四、加载图片的两种方式

1.有缓存

UIImage *image = [UIImage imageNamed:@"a.png"]

2.无缓存

// 全路径

NSString *path = [[NSBundle mainBundle] pathForResource:@"a.png" ofType:nil];

// path是a.png的全路径

UIImage *image = [[UIImage alloc] initWithContentsOfFile:path]

五、UIToolbar的简单使用

1.UIToolbar内部只能放UIBarButtonItem

六、子控件的操作

1.添加子控件 : addSubview:

2.从父控件中移除 : removeFromSuperview

七、动画

1.头尾式

[UIView beginAnimations:nil context:nil];

[UIView setAnimationDuration:1.0];

// 需要执行动画的代码....

[UIView commitAnimations];

2.block式

[UIView animateWithDuration:1.0 animations:^{

// 需要执行动画的代码....

} completion:^(BOOL finished) { // 动画执行完毕后会自动调用这个block(这个代码段)

}];

iOS基础 - UIButton - UIImageView的更多相关文章

  1. IOS基础学习-2: UIButton

    IOS基础学习-2: UIButton   UIButton是一个标准的UIControl控件,UIKit提供了一组控件:UISwitch开关.UIButton按钮.UISegmentedContro ...

  2. [iOS基础控件 - 5.5] 代理设计模式 (基于”APP列表"练习)

    A.概述      在"[iOS基础控件 - 4.4] APP列表 进一步封装,初见MVC模式”上进一步改进,给“下载”按钮加上效果.功能      1.按钮点击后,显示为“已下载”,并且不 ...

  3. UI基础UIButton

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

  4. iOS基础UI控件介绍-Swift版

    iOS基础UI控件总结 iOS基础控件包括以下几类: 1.继承自NSObject:(暂列为控件) UIColor //颜色 UIImage //图像 2.继承自UIView: 只能相应手势UIGest ...

  5. iOS 基础日记-修饰符

    今晚随便温习了一下iOS 基础关于修饰符这块的东西,下面简单的来描述一下,其中有的也是在网络学习到的: strong与weak是由ARC新引入的对象变量属性 ARC的解释:ARC引入了新的对象的生命周 ...

  6. iOS基础问答面试

    <简书社区 — Timhbw>iOS基础问答面试题连载(一)-附答案:http://www.jianshu.com/p/1ebf7333808d <简书社区 — Timhbw> ...

  7. [置顶] IOS 基础入门教程

    IOS 基础入门教程 教程列表: IOS 简介 IOS环境搭建 Objective C 基础知识 创建第一款iPhone应用程序 IOS操作(action)和输出口(Outlet) iOS - 委托( ...

  8. IOS 多个UIImageView 加载高清大图时内存管理

    IOS 多个UIImageView 加载高清大图时内存管理 时间:2014-08-27 10:47  浏览:59人 当我们在某一个View多个UIImageView,且UIImageView都显示的是 ...

  9. iOS 基础:Frames、Bounds 和 CGGeometry

    https://segmentfault.com/a/1190000004695617 原文:<iOS Fundamentals: Frames, Bounds, and CGGeometry& ...

随机推荐

  1. 关于ACM,关于CSU

    原文地址:http://tieba.baidu.com/p/2432943599 前言: 即将进入研二,ACM的事情也渐渐远去,记忆终将模糊,但那段奋斗永远让人热血沸腾.开个贴讲讲ACM与中南的故事, ...

  2. ASP.NET——两个下拉框来实现动态联动

    介绍: 在网页中.我们常常会遇到下图中的情况.首先在下拉框中选择所在的省.选择之后,第二个下拉框会自己主动载入出该省中的市.这样设计极大的方便了用户的查找.那这是怎样实现的呢? 1.建立数据库 &qu ...

  3. c#有关udp可靠传输(包传输数据包) 升级

    在c#有关udp可靠传输(包传输数据包)我们讨论,UDP包的发送,可是上一个程序有一个问题.就是数据比較大.一个Message类序列化后都有2048B,而实际的数据量也就只是 50B罢了,这就说明当中 ...

  4. 查询出各个学科的前3名的同学信息的Sql

    查找各个学科的成绩前3名的学生信息Sql,有2种方法,一种是利用sql的row_number() over()函数,另一种是用子查询, 表设计如下 如果不考虑各个学科的成绩有并列的情况的话,有如下两种 ...

  5. bigdata_批量机器执行通用脚本

    经常有这样的场景,需要批量验证一些配置或者机器,执行一些命令.例如  echo $PATH  等等 这里分享一个批量执行脚本 脚本名称 deployCommnd.sh 运行demo : sh depl ...

  6. 第16章 观察者模式(Oberver Pattern)

    原文  第16章 观察者模式(Oberver Pattern) 观察者模式  概述:   在软件构建过程中,我们需要为某些对象建立一种“通知依赖关系” ——一个对象(目标对象)的状态发生改变,所有的依 ...

  7. React.js再探(二)

    上文中说到了组件了. 我们使用组件的目的最大莫过于复用,提供生产效率. 那么,这时候组件就应该能够提供一些”api”出来,让开发者去定义在不同场景下的不同表现,比如,行为或外观等. 而这些“api”就 ...

  8. POJ1201-Intervals(差动限制)

    Intervals Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 20786   Accepted: 7866 Descri ...

  9. 使用Visifire+ArcGIS API for Silverlight实现Graphic信息的动态图表显示

    原文:使用Visifire+ArcGIS API for Silverlight实现Graphic信息的动态图表显示 首先来看一看实现的效果: PS:原始的程序中更新曲线数据时添加了过渡的效果,具体可 ...

  10. Swift中文教程(五)--对象和类

    原文:Swift中文教程(五)--对象和类 Class 类 在Swift中可以用class关键字后跟类名创建一个类.在类里,一个属性的声明写法同一个常量或变量的声明写法一样,除非这个属性是在类的上下文 ...