1、通用執行個體化對象方法:
UIButton *button = [[UIButton alloc] initWithFrame:rect];
2、快速執行個體化對象方法:
UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
提示:
在OC開發中,執行個體化任何類型的非自定義對象,都請首先嘗試一下是否存在快速定義方法。如果存在快速定義方法,就盡量不要使用init之類的方法執行個體化對象!
1、 UIButtonTypeCustom
按鈕的内容需要自定義
2、UIButtonTypeRoundedRect
圓角矩形按鈕
3、UIButtonTypeDetailDisclosure
顯示明細按鈕
4、UIButtonTypeInfoLight
亮色資訊按鈕,用于深色背景
5、UIButtonTypeInfoDark
深色資訊按鈕,使用者淺色背景
6、UIButtonTypeContactAdd
添加按鈕
說明:
–前兩種類型的按鈕最常用
後四種類型的按鈕設計,是為了保持使用者統一的使用習慣
1、正常狀态下按鈕文字
[button setTitle:@"按鈕" forState:UIControlStateNormal];
2、長按按鈕狀态下的按鈕文字
[button setTitle:@"有人摸我" forState:UIControlStateHighlighted];
注意
–在設定按鈕文字時,需要指定文字對應的按鈕狀态
[button setTitleColor:[UIColor blackColor]
forState:UIControlStateNormal];
[button setTitleColor:[UIColor redColor]
forState:UIControlStateHighlighted];
注意:
–在設定按鈕文字顔色時,同樣需要指定顔色應用的按鈕狀态
[button setBackgroundColor:[UIColor orangeColor]];
–在設定背景顔色時,按鈕需要是自定義類型
// 加載圖像
UIImage *image = [UIImage imageNamed:@"sub_black_add.png"];
// 設定按鈕圖像
[button setImage:image forState:UIControlStateNormal];
// 設定按鈕背景圖像
[button setBackgroundImage:image forState:UIControlStateNormal];
–背景圖像會根據按鈕的尺寸拉伸
–按鈕圖像會居中顯示在按鈕中央位置
–如果同時設定了按鈕的圖像和文字
按鈕區域足夠大,會并列顯示圖像和文字
如果區域不夠大,優先顯示圖像
// 設定按鈕點選監聽
[button addTarget:self action:@selector(tapButton)
forControlEvents:UIControlEventTouchUpInside];
–調用自定義方法需要使用@selector指令
–注意void和IBAction的差別
–按鈕事件最多隻可以帶一個參數