1.建立⼀一個 button :buttonWithType:UIButton*button=[UIButtonide
buttonWithType:UIButtonTypeRoundedRect]; //加方法建立,不須要 release函數
//建立⼀一個什麼樣的 button 用 buttonWithType:字體
typedef enum {
UIButtonTypeCustom = 0, //自定義(常加載圖片) nospa
button type
UIButtonTypeRoundedRect, //圓角按鈕UIButtonTypeDetailDisclosure, //尖叫號按鈕UIButtonTypeInfoLight, 信息按鈕(淺)UIButtonTypeInfoDark, 信息按鈕(深)UIButtonTypeContactAdd, 加號按鈕線程
} UIButtonType;
2.設置座標和大小
button.frame = CGRectMake(10, 30, 300, 30);指針
3.// 設置按鈕上的文字
// 在按鈕默認狀態(正常狀態)下顯示:圓角按鈕code
[btn1 setTitle:@"圓角按鈕" forState:UIControlStateNormal];orm
UIControlStateNormal = 0, 正常狀態UIControlStateHighlighted = 1 << 0, 高亮狀態(點擊按鈕時)UIControlStateDisabled 按鈕無效未激活時(enabled==NO)對象
// 在按鈕點住狀態(高亮狀態下)下顯示:按鈕被點擊事件
[btn1 setTitle:@"按鈕被點擊"forState:UIControlStateHighlighted];3.//更改按鈕文字大小
btn.titleLabel.font = [UIFont systemFontOfSize:25] ;
4.// 設置點住時按鈕變化顏色(高亮狀態)
[btn1 setTintColor:[UIColor redColor]];
// 設置背景顏色後能夠看出其實仍是⼀一個矩形的View
[btn1 setBackgroundColor:[UIColor orangeColor]];
5. // 設置按鈕的點擊事件
/*
target:執行哪一個對象中的方法
action:執行的方法controlEvents:觸發的方式
*/
[btn1 addTarget:self action:@selector(btnClick:)forControlEvents:UIControlEventTouchUpInside];
UIControlEventTouchDown
鼠標左鍵按下觸發
鼠標按下,在button內擡起 鼠標按下,在button外擡起
UIControlEventTouchUpInside
觸發
UIControlEventTouchUpOutside
觸發
6.//生成⼀一個定時器,時間每隔0.02秒調用⼀一次updateTimer 函數,函數聲
明在self-本類內部 repeats:Yes表明重複調用
第二個參數能夠是任意類型的對象指針
[NSTimer scheduledTimerWithTimeInterval:0.02target:self selector:@selector(updateTimer) userInfo:nilrepeats:YES] ;
NSTimer * timer; if(!timer)
timer = [NSTimer scheduledTimerWithTimeInterval:0.02target:self selector:@selector(setLabel) userInfo:nilrepeats:YES];
//啓動⼀一個定時器,第⼀一個參數表示延遲時間,是浮點數,單位是秒.最後 ⼀一個參數表示是否重複,添NO表示這個事情只作⼀一次。
//啓動新的線程0.02秒鐘後,讓self 調用 setLabel
//定時器不須要啓動,從建立時就自動啓動了,不須要釋放,停下來時,
自動釋放。
else{
[timer invalidate];//終止定時器,定時器會釋放
timer = nil; }
7.tag 標籤:能夠區分是哪⼀一個控件; view viewWithTag:<#(NSInteger)#>];
.
[self.view viewWithTag:11];
view viewWithTag:<#(NSInteger)#>];
UILabel
//實際上 label 就是⼀一個能夠顯示文字的視圖控件;1.//initWithFrame設置標籤的座標和大小
UILabel * label1 = [[UILabelalloc]initWithFrame:CGRectMake(0, 0, 320, 30)];
2.//給⼀一個視圖添加⼀一個子視圖;[self.view addSubview:label1];
3.//給Label添加內容(設置)label2.text =@"hi,我是⼀一個標籤. ";
4.//設置字體顏色 設置標籤內容的顏色label2.textColor = [UIColor whiteColor];
5.//設置標籤背景顏色label.backgroundColor = [UIColor
orangeColor];//clearColor透明色
6.//設置字體的大小
label.font = [UIFont systemFontOfSize:40]; label.font = [UIFont boldSystemFontOfSize:20];//加粗
label.font = [UIFont italicSystemFontOfSize:20];//傾斜7.//自適應寬度 默認是NO
label.adjustsFontSizeToFitWidth = YES;8.//設置對齊方式;
//高版本以NS開頭設置對齊方式label1.textAlignment =
UITextAlignmentCenter;//UITextAlignmentRight右對齊UITextAlignmentCenter居中顯示默認左對齊
9.//多行顯示
label.numberOfLines= 5;//0最大行數(默認是1)//label 的內容超過標籤的寬度,默認省略的後面的內容
10//換行與省略
當內容超過 label 的寬度時:
label.lineBreakMode = UILineBreakModeWordWrap;//以
單詞爲單位換行(最後⼀一行顯示不完以單詞截斷剩下的內容不顯示也 不會省略(沒有...))、、高版本 NS 開頭
typedef enum {/////////如下三種會換行和截斷不會有省略
UILineBreakModeWordWrap = 0, UILineBreakModeCharacterWrap, 以字符爲單位換行(最後⼀一行顯
示不完以字符截斷剩下的內容不顯示也不會省略(沒有...))UILineBreakModeClip, 以單詞爲單位換行(最後⼀一行顯示不完
以字符截斷剩下的內容不顯示也不會省略(沒有...)
/////////如下三種會以單詞換行和最後一行字符截斷會有省略UILineBreakModeHeadTruncation, // 以單詞換行,最後一行以字符截
斷,最後一行顯示不完則省略最後一行的開頭,以」...」顯示UILineBreakModeTailTruncation, // 以單詞換行,最後一行以字
符截斷,最後一行顯示不完則省略最後一行的中間,以」...」顯示UILineBreakModeMiddleTruncation, // 以單詞換行,最後一行以
字符截斷,最後一行顯示不完則省略最後一行的最後,以」...」顯示} UILineBreakMode;