今天,我学到了所有app经常用到的UIButton控件,废话不多说,这些都是我学习的时候总结的一些,希望可以帮到以后的初学者,IOS初学不应该直接拖拽,感觉不易于理解,所以我总结的基本上全是纯代码编辑

最重要的初始化:初始化,无非就是分配空间,定义大小。基本上所有的语言初始化都是这样。

  1. [UI~ alloc]:在IOS中,对象分配空间一般都是这样来分配的,当然,我们要培养一个好习惯,只要定义了对象,就要先初始化,不管用没用,要不然到时候出错了你也不知道出错在哪。
  2. initwithfram:编写对象外观,很常用的;
  3. CGRectMake(x,y,width,height):定义对象的初始位置和大小;
  4. [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的更多相关文章

  1. 初识IOS,Label控件的应用。

    初识IOS,Label控件的应用. // // ViewController.m // Gua.test // // Created by 郭美男 on 16/5/31. // Copyright © ...

  2. 初识ios自动化(一)

    Appium进行自动化测试有两个好处: 1. Appium在不同平台中使用了标准的自动化APIs,所以在跨平台时,不需要重新编译或者修改自己的应用. 2. Appium支持Selenium WebDr ...

  3. 初识IOS

    编译环境: ssh cloud@10.0.4.148  mx-cloud 1.关于ARM架构 IPHONE上的ARM-CPU架构在不断的进化过程中,目前情况如下: ARMv8 / ARM64 = iP ...

  4. 生命周期-初识IOS

    经常因为生命周期的事情,而视图顺序加载错误,或者出现一系列的小错误并且修改不出来,程序员不知道生命周期确实挺可悲的. IOS生命周期: 自上而下的执行,并且viewDidLoad只会执行一次,所以我们 ...

  5. 初识 iOS 自动化测试框架 WebDriverAgent

    微信跳一跳最近很火,外挂代练什么的也越来越多.作为一只程序猿,对外挂的原理产生了强烈的好奇心,于是埋头研究了一阶段,注意到了 WebDriverAgent 这套 Facebook 出品的自动化测试框架 ...

  6. 设置程序图标-初识IOS

    相信我们都很喜欢做出的程序弄成自己的图标. 在创建项目过后显示的页面中,选择App lcons and launch images,  点击App lcons Source 之后的方向符号,把里面的东 ...

  7. UISwitch + UIimage - 初识IOS

    这里解释一个小例子,希望对你有点帮助,利用UISwitch控制UIimage的动画效果 先定义一个数组,用来存放照片,现在定义数组有一个特别简单的方法: NSArray *image1 = @[]; ...

  8. ios基础篇(三)——UIButton的详细介绍

    按钮UIButton是ios开发中最常见的控件之一,下面来介绍UIButton的详细内容: 一.UIButton的定义 UIButton *button=[[UIButton buttonWithTy ...

  9. UI基础:UIButton.UIimage 分类: iOS学习-UI 2015-07-01 21:39 85人阅读 评论(0) 收藏

    UIButton是ios中用来响应用户点击事件的控件.继承自UIControl 1.创建控件 UIButton *button=[UIButton buttonWithType:UIButtonTyp ...

  10. 4. UIButton的使用

    1. UIButton的初认识 来自:http://www.cnblogs.com/mcj-coding/p/5103891.html QQ:853740091 1.1 UIButton 是iOS 开 ...

随机推荐

  1. 监控工具zabbix

    1 安装zabbixyum install -y epel-release安装rpm包的lamp环境 yum install  httpd mysql mysql-libs php php-mysql ...

  2. iocfont 网页图标字体以及使用方法

    在网页设计中使用图标字体(icon font)是件挺有新意的事情,使用图标字体能我们带来了一定的方便,比如在移动设备.Retina屏幕效果展示.兼容IE6/7浏览器以及能任意将图标放大缩小等,这些都是 ...

  3. Docker中的一些命令

    可以交互的方式启动container $ sudo docker run -t -i ubuntu:14.04 /bin/bash 当这个Bash shell进程终止时,这个容器也停止了. docke ...

  4. Action Result

    操作返回的内容成为操作结果 大多数情况下返回ViewResult,基类ActionResult 6钟标准类型: ViewResult:视图结果,包含HTML标记等元素 EmptyResult:空结果 ...

  5. asp.net中使用forms验证

    1.首先在web.config中修改验证方式为 "Forms" <authentication mode="Forms"> 这里的模式有很多中,可自 ...

  6. 临时解决linux下time wait问题

     通过 netstat  -anp | grepTIME_WAIT | wc -l 命令查看数量,发现TIME_WAIT的连接数量超过了阈值   1.初步怀疑是程序没有关闭连接,codereview了 ...

  7. asp.net mvc 删除栏目、栏目下又有子栏目的处理方式

  8. BZOJ2739 最远点(分治 + 决策单调性)

    2739: 最远点 Time Limit: 20 Sec Memory Limit: 256 MB Description 给你一个N个点的凸多边形,求离每一个点最远的点. Input 本题有多组数据 ...

  9. JSON.stringify 语法实例讲解 字符串

    语法: JSON.stringify(value [, replacer] [, space]) var student = new Object(); student.name = "La ...

  10. CSU 1120 病毒

    最长公共上升子序列(LCIS) 裸的算法题. 动态规划: 两组数组a[n].b[m]. f[i][i]表示以a[i].b[j]结尾的两个数组的LCIS. 转移方程: a[i]!=b[j] : f[i] ...