iOS開發--UIKit控制項之UIButton(按鈕),--uikituibutton

來源:互聯網
上載者:User

iOS開發--UIKit控制項之UIButton(按鈕),--uikituibutton

(註:本文為本人日常開發中所遇到的,使用到的一些方法屬性,作為備忘)

UIButton與UIView一樣,是做iOS開發中最常用、常見的一個UIKit控制項。

UIButton繼承自UIControl,而UIControl繼承自UIView,所以UIButton也可以說是UIView的一個子類。

在任何iOS應用中,UIButton都是隨處可見的,它可以與使用者進行互動,傳遞事件!

建立UIButton

 1 // 執行個體化(建立)按鈕 2     /** 3      *  Type取值: 4      *   1. UIButtonTypeContactAdd  : 加號按鈕 5      *   2. UIButtonTypeCustom      : 自訂按鈕 6      *   3. UIButtonTypeDetailDisclosure    : 'i'字按鈕 7      *   4. UIButtonTypeInfoDark    : 'i'字按鈕 8      *   5. UIButtonTypeInfoLight   : 'i'字按鈕 9      *   6. UIButtonTypeRoundedRect : 圓角按鈕(現在設定這個最終效果並不是圓角)10      *   7. UIButtonTypeSystem      : 效果與上面的RoundedRect一樣11      */12     UIButton *button = [UIButton buttonWithType:UIButtonTypeSystem];13     // 設定背景顏色14     button.backgroundColor = [UIColor lightGrayColor];15     // 設定地區範圍16     button.frame = CGRectMake(110, 234, 100, 100);17     // 添加到View上18     [self.view addSubview:button];

屬性

 

 1     // 設定是否選中狀態 2     button.selected = NO; 3     // 設定是否接收觸摸事件 4     button.enabled = YES; 5     // 設定tag值 6     button.tag = 0; 7     // 設定按鈕標題文字的字型大小 8     button.titleLabel.font = [UIFont systemFontOfSize:18.0f]; 9     // 通過設定這個屬性,可以讓按鈕的文字適應按鈕的地區顯示10     // NSLineBreakByCharWrapping    也可以設定成這個,效果一樣11     button.lineBreakMode = NSLineBreakByWordWrapping;12     // 設定圓角直徑13     button.layer.cornerRadius = 10.0f;14     // 剪下超出部分15     button.layer.masksToBounds = YES;16     // 邊框寬度17     button.layer.borderWidth = 1.0f;18     // 邊框顏色19     button.layer.borderColor = [UIColor purpleColor].CGColor;

 

方法

 1     // 設定按鈕狀態標題文字 2     /** 3      * State取值: 4      *  1. UIControlStateNormal     : 普通狀態(預設狀態) 5      *  2. UIControlStateSelected   : 選中狀態 6      *  3. UIControlStateHighlighted : 高亮狀態 7      *  4. UIControlStateDisabled   : 禁用狀態 8      *  平常開發用的到的狀態就這四個 9      */10     [button setTitle:@"按鈕" forState:UIControlStateNormal];11     // 設定按鈕狀態表徵圖12     // 這裡state的取值與上面相同13     [button setImage:[UIImage imageNamed:@"01.png"] forState:UIControlStateNormal];14     // 設定按鈕狀態背景圖15     // 這裡state的取值與上面相同16     [button setBackgroundImage:[UIImage imageNamed:@"02.png"] forState:UIControlStateNormal];17     // 添加(綁定)點擊事件18     /**19      * 參數說明: 20      *  target          : 事件監聽對象,一般傳self21      *  action          : 回調的事件方法,只能傳按鈕本身一個參數22      *  ControlEvents   : 監聽類型23      *      UIControlEventTouchUpInside : 單擊24      *      UIControlEventTouchCancel   : 觸摸取消25      *      UIControlEventTouchDown     : 觸摸完成26      *  到目前為止,我用的最多的就是單擊事件,基本很少用到取消與完成27      */28     [button addTarget:self action:@selector(ButtonTouchEvent:) forControlEvents:UIControlEventTouchUpInside];

事件

- (void)ButtonTouchEvent:(UIButton *)sender {    // 按鈕點擊事件回調處理        // 設定按鈕選中技巧    sender.selected = !sender.selected;}

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.