UIButton-初识IOS
今天,我学到了所有app经常用到的UIButton控件,废话不多说,这些都是我学习的时候总结的一些,希望可以帮到以后的初学者,IOS初学不应该直接拖拽,感觉不易于理解,所以我总结的基本上全是纯代码编辑
最重要的初始化:初始化,无非就是分配空间,定义大小。基本上所有的语言初始化都是这样。
- [UI~ alloc]:在IOS中,对象分配空间一般都是这样来分配的,当然,我们要培养一个好习惯,只要定义了对象,就要先初始化,不管用没用,要不然到时候出错了你也不知道出错在哪。
- initwithfram:编写对象外观,很常用的;
- CGRectMake(x,y,width,height):定义对象的初始位置和大小;
- [UIScreen mainScreen].bounds.size 这句话可以得到屏幕的大小,很好用,算是个小重点吧
//定义一个button按钮
UIButton *Button = [[UIButton alloc]initWithFrame:CGRectMake(, , [UIScreen mainScreen].bounds.size.width, [UIScreen mainScreen].bounds.size.height)];
5. [Button setTitle]定义button的title属性
6. [forState:uicontrolstatenormal]设置Button的状态
[Button setTitle:@"按键" forState:UIControlStateNormal];
这里,我和初学者们分享一个利于编程的小窍门:comnd+你想要查看的Demo一般都可以找到你想要的东西。就像这里,你不知道Button的状态都是什么,你就可以comnd+UIControlStateNormal,就可以查到
其他的一些常用的属性设置我都不一一介绍了,初学者们也可以comnd+UIButton去找找,利于自己的理解
[Button setTitleColor:[UIColor redColor] forState:UIControlStateNormal];
//定义button的字体颜色
[Button setBackgroundColor:[UIColor greenColor]];
//定义button按钮的背景色
[Button.titleLabel setFont:[UIFont systemFontOfSize:20.0]];
//定义button的字体大小
7. 加载视图,这个算是个小重点,因为很多时候会被初级开发者遗忘,导致虽然没报错,但是就是调试不出来东西
[self.view addSubview:Button];
//加载自己的view添加已定义的btn视图
8. 手动定义一个按钮的点击事件
[Button addTarget:self action:@selector(btnDown:) forControlEvents:UIControlEventTouchDown];
//定义一个事件名字为"btndown"并定义为UIControlEventTouchDown事件(点击事件)
这个点击状态可以有很多种,想知道的可以点进去看看。就不一一介绍了,要注意,要是你想点击有反应的话,不要把按钮设置为UIControlStateNormal 的状态,要不然会出错毕竟这不是动作,所以不会作出反应,更不会调用你的点击事件了。
9. 定义的点击事件:
-(void)btnDown:(UIButton *)btn{
NSLog(@"fire in hole");
//输出
NSLog(@"%@",btn.titleLabel.text);
//输出button的title
}
如果不穿参数的话,也可以直接定义为:
-(void)btnDown
{
NSLog(@"fire in hole");
//输出
NSLog(@"%@",btn.titleLabel.text);
//输出button的title
}
他们的区别就是,第二种你没有传参数,你得不到Button的title值,报错
今天就到这里吧,明天继续。
UIButton-初识IOS的更多相关文章
- 初识IOS,Label控件的应用。
初识IOS,Label控件的应用. // // ViewController.m // Gua.test // // Created by 郭美男 on 16/5/31. // Copyright © ...
- 初识ios自动化(一)
Appium进行自动化测试有两个好处: 1. Appium在不同平台中使用了标准的自动化APIs,所以在跨平台时,不需要重新编译或者修改自己的应用. 2. Appium支持Selenium WebDr ...
- 初识IOS
编译环境: ssh cloud@10.0.4.148 mx-cloud 1.关于ARM架构 IPHONE上的ARM-CPU架构在不断的进化过程中,目前情况如下: ARMv8 / ARM64 = iP ...
- 生命周期-初识IOS
经常因为生命周期的事情,而视图顺序加载错误,或者出现一系列的小错误并且修改不出来,程序员不知道生命周期确实挺可悲的. IOS生命周期: 自上而下的执行,并且viewDidLoad只会执行一次,所以我们 ...
- 初识 iOS 自动化测试框架 WebDriverAgent
微信跳一跳最近很火,外挂代练什么的也越来越多.作为一只程序猿,对外挂的原理产生了强烈的好奇心,于是埋头研究了一阶段,注意到了 WebDriverAgent 这套 Facebook 出品的自动化测试框架 ...
- 设置程序图标-初识IOS
相信我们都很喜欢做出的程序弄成自己的图标. 在创建项目过后显示的页面中,选择App lcons and launch images, 点击App lcons Source 之后的方向符号,把里面的东 ...
- UISwitch + UIimage - 初识IOS
这里解释一个小例子,希望对你有点帮助,利用UISwitch控制UIimage的动画效果 先定义一个数组,用来存放照片,现在定义数组有一个特别简单的方法: NSArray *image1 = @[]; ...
- ios基础篇(三)——UIButton的详细介绍
按钮UIButton是ios开发中最常见的控件之一,下面来介绍UIButton的详细内容: 一.UIButton的定义 UIButton *button=[[UIButton buttonWithTy ...
- UI基础:UIButton.UIimage 分类: iOS学习-UI 2015-07-01 21:39 85人阅读 评论(0) 收藏
UIButton是ios中用来响应用户点击事件的控件.继承自UIControl 1.创建控件 UIButton *button=[UIButton buttonWithType:UIButtonTyp ...
- 4. UIButton的使用
1. UIButton的初认识 来自:http://www.cnblogs.com/mcj-coding/p/5103891.html QQ:853740091 1.1 UIButton 是iOS 开 ...
随机推荐
- android studio 报ambiguous method call
如题,在android studio中调用this.toString时,提示的错误信息是ambiguous method call. both get class () in object and g ...
- VCS仿真 Dump Memory
VCS仿真 Dump Memory 两种方法 vcs联合verdi生成fsdb文件 vcs生成vpd文件 VCS联合verdi生成fsdb文件 1.testbench中加入如下语句: initial ...
- SSH 服务启动时出现如下错误:fatal: Cannot bind any address
注意:本文相关配置及说明已在 CentOS 6.5 64 位操作系统中进行过测试.其它类型及版本操作系统配置可能有所差异,具体情况请参阅相应操作系统官方文档. 问题描述 云服务器 ECS (Elast ...
- javascript什么是函数
函数是完成某个特定功能的一组词语.如没有函数,完成任务可能需要五行.十行.甚至更多的代码. 这是未满就可以把完成特定功能的代码块放到一个函数里,直接调用这个函数,就省重复输入大量代码的麻烦. 如何定义 ...
- 使用DataReader
string sqlStr="select * from tb_news"; SqlCommand myCmd=new SqlCommand(sqlStr,myConn); myC ...
- VPN错误789:L2TP连接尝试失败
VPN 错误789:l2tp 连接尝试失败,因为安全层在初始化与远程计算机的协商时遇到一个处理错误 Windows配置VPN,选择“使用IPsec的第2层隧道协议(L2TP/IPSec)”时, XP系 ...
- sql 合并列
1.合并一列用“ ,”号隔开. 如下图: 这样的一列我想直接在sql里面合并最后变成:586,444,444,444,444这样的效果,平常的做法是直接把这列数据取出来,在前端循环加上逗号,但其实是可 ...
- 选中CheckBoxList的值放到TextBox中,再次选中从textBox中删除
当选中checkboxlist中的值,直接放到文本框中,在checkboxlist的SelectedIndexChanged事件下执行方法, //将选中的值放到文本框中 ...
- lunix安装jdk(rpm格式)
1.下载后,首先把jdk-7u3-linux-x64.rpm复制到/usr/local/src#cp jdk-7u3-linux-x64.rpm /usr/local/src/2.给所有用户添加可执行 ...
- Java学习笔记--Swing2D图形
1.处理2D图形 要想使用java 2D库绘制图形,需要获得一个Graphics2D类对象.这个类是Graphics类的子类.paintComponent方法自动获得一个Graphics2D类对象,我 ...