UIKit框架之UIButton详解

UIKit框架是iPhone应用程序开发中最基本的框架,也是用得最多、最重要的框架,今天要和大家分享的就是UIKit中的UIButton相关知识,一起来看看吧。

1.实例化:

1.1.init方式:


1

UIButton *button = [[UIButton alloc] initWithFrame:rect];

1.2.类方法方式:


1

UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];

其中按钮类型枚举:

UIButtonTypeCustom

按钮的内容需要自定义

UIButtonTypeRoundedRect

圆角矩形按钮

UIButtonTypeDetailDisclosure

显示明细按钮

UIButtonTypeInfoLight

亮色信息按钮,用于深色背景

UIButtonTypeInfoDark

深色信息按钮,用户浅色背景

UIButtonTypeContactAdd

添加按钮

2.基本设置

2.1.设置文字

在设置按钮文字时,需要指定文字对应的按钮状态:


1

2

3

4

//正常状态下按钮文字

[btn setTitle:@"正常" forState:UIControlStateNormal];

//长按按钮状态下的按钮文字

[btn setTitle:@"长按" forState:UIControlStateHighlighted];

2.2.设置文字颜色

在设置按钮文字颜色时,也需要指定文字对应的按钮状态:


1

2

[btn setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];

[btn setTitleColor:[UIColor redColor] forState:UIControlStateHighlighted];

2.3.设置背景颜色


1

[btn setBackgroundColor:[UIColor orangeColor]];

2.4.设置图片及背景图像


1

2

3

4

5

6

// 加载图像

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

// 设置按钮图像

[btn setImage:image forState:UIControlStateNormal];

// 设置按钮背景图像

[btn setBackgroundImage:image forState:UIControlStateNormal];

背景图像会根据按钮的尺寸拉伸,按钮图像会居中显示在按钮中央位置。
如果同时设置了按钮的图像和文字,按钮区域足够大,会并列显示图像和文字,如果区域不够大,优先显示图像。

2.3.设置按钮点击监听


1

2

// 设置按钮点击监听

[btn addTarget:self action:@selector(tapButton) forControlEvents:UIControlEventTouchUpInside];

调用自定义方法需要使用 @selector 指令,按钮事件最多只可以带一个参数。

原文来自cocoder

时间: 2024-08-04 05:10:38

UIKit框架之UIButton详解的相关文章

IOS开发学习笔记(2)-----UIButton 详解

1. [代码][C/C++]代码     //这里创建一个圆角矩形的按钮    UIButton *button1 = [UIButton buttonWithType:UIButtonTypeRoundedRect];    //    能够定义的button类型有以下6种,//    typedef enum {//        UIButtonTypeCustom = 0,          自定义风格//        UIButtonTypeRoundedRect,        

Spring MVC 框架搭建及详解

一.Spring MVC环境搭建:(Spring 2.5.6 + Hibernate 3.2.0) 1. jar包引入 Spring 2.5.6:spring.jar.spring-webmvc.jar.commons-logging.jar.cglib-nodep-2.1_3.jar Hibernate 3.6.8:hibernate3.jar.hibernate-jpa-2.0-api-1.0.1.Final.jar.antlr-2.7.6.jar.commons-collections-3

SSH框架--struts深入详解(一)

学习了struts,但是对于它的由来,以及为什么使用action和struts.xml的方式而不采用以前的servlet方式,有些疑问,到底之前的方式有什么弊端,struts又给我们带来了什么便利? 下面一一为大家解答! struts的由来: 随着JSP与Servlet 技术大量应用于以Web为基础的应用程序,为了提升Web 应用程序可维护性与重复使用性,Java开发人员提出了一些较佳的开发模式.比较常见的两种JSP应用架构分别为Model1 与Model 2.详情参见(JAVA学习篇--JAV

SSH框架的整合详解

"-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> SSH框架的整合详解 - super_YC的博客 - 博客频道 - CSDN.NET super_YC的博客 记录我生活的一点一滴!我很开心拥有这样一个自己心事的笔记本 目录视图 摘要视图 订阅 [活动]2017 CSDN博客专栏评选 &nbsp [5月书讯]流畅的P

【UIKit Basics】AppDelegate详解

[UIKit]AppDelegate: 在应用程序启动完毕后调用(只会调用一次,第一次打开程序的时候才会调用) // 视图加载完成,应用程序加载到内存后调用的方法 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { // 创建一个UIWindow CGRect rect = [[UIScreen mainScreen] boun

java的集合框架最全详解

java的集合框架最全详解(图) 前言:数据结构对程序设计有着深远的影响,在面向过程的C语言中,数据库结构用struct来描述,而在面向对象的编程中,数据结构是用类来描述的,并且包含有对该数据结构操作的方法. 在Java语言中,Java语言的设计者对常用的数据结构和算法做了一些规范(接口)和实现(具体实现接口的类).所有抽象出来的数据结构和操作(算法)统称为Java集合框架(JavaCollectionFramework). Java程序员在具体应用时,不必考虑数据结构和算法实现细节,只需要用这

Java的集合框架最全详解(图)

纯个人整理,如有错误请指正. java的集合框架最全详解(图) 前言:数据结构对程序设计有着深远的影响,在面向过程的C语言中,数据库结构用struct来描述,而在面向对象的编程中,数据结构是用类来描述的,并且包含有对该数据结构操作的方法. 在Java语言中,Java语言的设计者对常用的数据结构和算法做了一些规范(接口)和实现(具体实现接口的类).所有抽象出来的数据结构和操作(算法)统称为Java集合框架(JavaCollectionFramework). Java程序员在具体应用时,不必考虑数据

spring框架 AOP核心详解

AOP称为面向切面编程,在程序开发中主要用来解决一些系统层面上的问题,比如日志,事务,权限等待,Struts2的拦截器设计就是基于AOP的思想,是个比较经典的例子. 一 AOP的基本概念 (1)Aspect(切面):通常是一个类,里面可以定义切入点和通知 (2)JointPoint(连接点):程序执行过程中明确的点,一般是方法的调用 (3)Advice(通知):AOP在特定的切入点上执行的增强处理,有before,after,afterReturning,afterThrowing,around

Android网络请求框架AsyncHttpClient实例详解(配合JSON解析调用接口)

最近做项目要求使用到网络,想来想去选择了AsyncHttpClient框架开进行APP开发.在这里把我工作期间遇到的问题以及对AsyncHttpClient的使用经验做出相应总结,希望能对您的学习有所帮助. 首先按照惯例先来简单了解一些AsyncHttpClient网络框架的一些知识. 1.简介 Android中网络请求一般使用Apache HTTP Client或者采用HttpURLConnect,但是直接使用这两个类库需要写大量的代码才能完成网络post和get请求,而使用android-a