IOS开发学习笔记024-UIButton和UIImageView的区别
一、UIButton和UIImageView的区别
1、 UIImageView 默认只能显示一张图片(默认会填充整个ImageView) 设置方法:image/setImage:
UIButton 默认能显示两种图片,前景和背景(背景会填充整个按钮,前景按尺寸显示) 还可以显示文字 setTitle: forState:
设置方法:setBackgroundImage: forState:/setImage: forState:
2、 UIImageView 默认不能响应点击事件
UIButton 可以响应 addTarget: action: forControlEvents:
3、 UIImageView只显示图片不做事件处理
UIButton既显示图片又响应事件
UIControl 类包含关于事件相关的方法 如addTarget
- //
- // SLQViewController.m
- // UIButton和UIImageView的区别
- //
- // Created by Christian on 15/4/28.
- // Copyright (c) 2015年 itcast. All rights reserved.
- //
- #import "SLQViewController.h"
- @interface SLQViewController ()
- @end
- @implementation SLQViewController
- - (void)viewDidLoad
- {
- [super viewDidLoad];
- // Do any additional setup after loading the view, typically from a nib.
- // UIImageView
- UIImageView *imageView = [[UIImageView alloc] init];
- // 设置图片2中方法
- //imageView.image = [UIImage imageNamed:@"014.png"];
- [imageView setImage:[UIImage imageNamed:@"014.png" ]];
- // 设置位置
- imageView.frame = CGRectMake(, , , );
- // 添加到视图
- [self.view addSubview:imageView];
- // UIButton
- UIButton *btn = [[UIButton alloc] init];
- // 设置背景图片
- [btn setBackgroundImage:[UIImage imageNamed:@"bg.png"] forState:UIControlStateNormal];
- // 设置前景图片
- [btn setImage:[UIImage imageNamed:@"016.png"] forState:UIControlStateNormal];
- // 设置位置
- btn.frame = CGRectMake(, , , );
- // 设置显示文字
- [btn setTitle:@"按钮" forState:UIControlStateNormal];
- // 给按钮添加监听事件
- [btn addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];
- // 添加到视图
- [self.view addSubview:btn];
- }
- - (void)btnClick:(UIButton *)btn
- {
- NSLog(@"%@",btn);
- }
- @end
二、UIView常用方法
1、addSubview:(UIView *) child
添加子控件,最新的子控件显示在最上面
2、NSArray *subviews
通过subviews获取所有子控件,顺序按照assSubView添加排列
3、removeFromSuperview
将控件本身从父控件中移除,控件也会从subviews数组中移除
4、(UIView *)viewWithTag:(int)myTag
返回tag值位myTag的子控件,如果有tag值重复,则取最前面的控件,也包含控件本身。
5、(UIView *)superView
返回父控件
三、随机生成数
1、arc4random() // 随机生成正整数和0
2、arc4random_unform(100) // 随机生成0~99的整数
四、类扩展
类扩展 (class extension 匿名分类)
@interface 类名 ()
{
// 成员变量
}
// 方法声明
@end
作用:
1、写在.m文件中
2、一般用来扩展私有成员变量、@property属性、方法等
IOS开发学习笔记024-UIButton和UIImageView的区别的更多相关文章
- IOS开发学习笔记(2)-----UIButton 详解
1. [代码][C/C++]代码 //这里创建一个圆角矩形的按钮 UIButton *button1 = [UIButton buttonWithType:UIButtonTypeRou ...
- iOS开发学习笔记:基础篇
iOS开发需要一台Mac电脑.Xcode以及iOS SDK.因为苹果设备都具有自己封闭的环境,所以iOS程序的开发必须在Mac设备上完成(当然,黑苹果应该也是可以的,但就需要花很多的精力去折腾基础环境 ...
- ios开发学习笔记(1)
objective-c基础总结 第一二章 1.application:didiFinishLauchingWithOptions:程序启动后立即执行 2.启动界面代码格式:self.window = ...
- ios开发学习笔记(这里一定有你想要的东西,全部免费)
1,Search Bar 怎样去掉背景的颜色(storyboard里只能设置background颜色,可是发现clear Color无法使用). 其实在代码里还是可以设置的,那就是删除背景view [ ...
- iOS开发学习笔记
1 常用的第三方工具 1.1 iPhone Simulator 测试程序需要模拟器iPhone Simulator 1.2 设计界面需要Interface Builder,Interface Buil ...
- IOS开发学习笔记021-练习2
只是简单练习一下,主要是学习里面的思想,处理问题的方法. 不过还有一个问题没想到解决方法. 那就是动态生成的按钮如何绑定按钮事件,请哪位大神指点一下啊.(知道怎么办了,原来是方法addTarget) ...
- IOS开发学习笔记043-QQ聊天界面实现
QQ聊天界面实现 效果如下: 实现过程: 1.首先实现基本界面 头像使用 UIImageView : 文字消息使用 UIButton 标签使用 UILable :水平居中 所有元素在一个cell中,在 ...
- ios开发学习笔记040-autolayout 第三方框架Masonry
不管是是界面创建约束还是代码创建约束,苹果官方提供的方式都比较繁琐.所以出现了第三方框架. Masonry 在github地址如下: https://github.com/SnapKit/Masonr ...
- IOS开发学习笔记037-九宫格代码实现
九宫格布局,用手机输入法时经常见到.先按3行3列写. 代码的实现主要是计算插入图片的位置. 每一张图片的位置和所在的行列密切相关.分析过程如下: 界面: 代码实现 1.把需要的图片资源添加进来 然后给 ...
随机推荐
- [转]git修改远程仓库地址
原文链接:http://www.cnblogs.com/lazb/articles/5597878.html 问:Coding远程仓库地址变了,本地git仓库地址如何更新为最新地址 git修改远程仓库 ...
- pat甲级1139
1139 First Contact(30 分) Unlike in nowadays, the way that boys and girls expressing their feelings o ...
- 如何用WebIDE打开并运行CRM Fiori应用
访问Web IDE url 在Web IDE里进行项目clone操作: https://:8080/#/admin/projects/fnf/customer/cus.crm.opportunity ...
- IOS view拖拽(触摸事件)
• iOS中的事件可以分为3大类型 触摸事件 加速计事件 远程控制事件 响应者对象 • 在iOS中不是任何对象都能处理事件,只有继承了UIResponder的对象才能接收并处理事 件.我们称之为“响应 ...
- 2018.10.05 TOPOI提高组模拟赛 解题报告
得分: \(100+5+100=205\)(真的是出乎意料) \(T1\):抵制克苏恩(点此看题面) 原题: [BZOJ4832][Lydsy1704月赛] 抵制克苏恩 应该还是一个比较简单的\(DP ...
- vuejs挂载点,模板与实例的关系
<body> <div id='root'> <h1>{{msg}}</h1> </div> <script> new Vue( ...
- python_58_装饰器1
装饰器:定义:本质是函数,(装饰其他函数),就是为其它函数添加附加功能原则:1.不能修改被饰的函数的源代码 2.不能修改被饰的函数的调用方式实现装饰器知识储备: 1.函数即“变量” 2.高阶函数 3. ...
- 漫谈 Clustering (3): Gaussian Mixture Model
上一次我们谈到了用 k-means 进行聚类的方法,这次我们来说一下另一个很流行的算法:Gaussian Mixture Model (GMM).事实上,GMM 和 k-means 很像,不过 GMM ...
- Luogu [P1958] 上学路线_NOI导刊2009普及(6)
上学路线_NOI导刊2009普及(6) 题目详见:上学路线_NOI导刊2009普及(6) 这是一道基础的DFS(深搜)题,堪称模板,是新手练习搜索与回溯的好题选. 大致思路:从(1,1)开始搜索,每次 ...
- React后台管理系统-首页Home组件
1.Home组件要显示用户总数.商品总数和订单总数,数据请求后端的 /manage/statistic/base_count.do接口,返回的是 this.state = { u ...