UIButton

UIButton

UIButton是一個常用到的UI控件, 俗稱”按鈕”。
一般情況下,點擊某個控件後,會做出相應反應的都是按鈕
按鈕的功能比較多,既能顯示文字,又能顯示圖片,還能隨時調整內部圖片和文字的位置
作用:監聽用戶的點擊事件,在用戶點擊後做出響應

這個是Button
這裏寫圖片描述

這個也是Button
這裏寫圖片描述

那麼,我們廢話不多說,趕緊上代碼
首先,我麼需要寫一個方法創建一個文字按鈕,

-(void)creatUIRectBUtton{

//    創建一個普通顯示文字的按鈕
    UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
//    設置位置
    button.frame = CGRectMake(100, 100, 80, 40);

//    設置文字
    /**
     *  UIControlStateNormal  正常狀態
        UIControlStateSelected 選中狀態
        UIControlStateHighlighted 高亮狀態,按下狀態
        UIControlStateDisabled  失效狀態,不可用狀態 
     */


    [button setTitle:@"孩紙別動" forState:UIControlStateNormal];

//    選中狀態
    [button setTitle:@"選中按鈕" forState:UIControlStateSelected];
//    高亮
    [button setTitle:@"按鈕按下" forState:UIControlStateHighlighted];

//    設置背景色
//    button.backgroundColor = [UIColor redColor];

    button.titleLabel.font = [UIFont systemFontOfSize:20.0];

#pragma mark 添加事件
    /**
     *  p1 : 誰來實現這個函數,實現者對象就是"誰",一般self
     *  p2:@selector(<#selector#>) 函數對象,當按鈕滿足p3事件類型的時候調用
     *  p3:(UIControlEvents)事件處理類型函數
     *
     UIControlEventTouchDown :當我們的手指只要觸碰到屏幕時觸發事件
     UIControlEventTouchUpInside 當我們的手指離開屏幕且手指的位置在按鈕的範圍內觸發事件
     UIControlEventTouchUpOutside 當我們的手指離開屏幕且手指的位置在按鈕的範圍外觸發事件
     *
     */

    [button addTarget:self action:@selector(pressBtn:) forControlEvents:UIControlEventTouchUpInside];

//    設置按鈕的文字風格
//    正常狀態下的文字
    [button setTitleColor:[UIColor blueColor] forState:UIControlStateNormal];

//    高亮狀態下的文字
    [button setTitleColor:[UIColor redColor] forState:UIControlStateHighlighted];


    [button setTintColor:[UIColor blackColor]];

//    顯示在視圖上
    [self.view addSubview:button];

}

實現一下button的點擊事件方法

-(void)pressBtn:(UIButton *)sender{

//    更改狀態
    sender.selected =! sender.selected;
    NSLog(@"你點了我");
}

到這裏我們需要在viewDidLoad調用一下我們剛剛寫的那個創建普通文字按鈕的方法,讓他顯示在我們的視圖上
1.普通狀態下的按鈕
這裏寫圖片描述

2.高亮狀態下的按鈕
這裏寫圖片描述

3.選中狀態下的按鈕
這裏寫圖片描述

文章開頭說過按鈕可以顯示文字和圖片,那麼普碳顯示文字的按鈕我們做了,現在我們再來做一個顯示圖片的按鈕
1,首先我們需要拖拽三張圖片進我們的工程裏面
這裏寫圖片描述

2.同樣的我們需要寫一個方法創建一個顯示圖片的按鈕

-(void)creatImageButton{

//    創建一個顯示圖片的按鈕
    UIButton *imgBtn = [UIButton buttonWithType:UIButtonTypeCustom];

    imgBtn.frame = CGRectMake(100, 300, 100, 100);

//    設置不同狀態下的圖片
//    p1 顯示圖片的對象
//    p2 控件的狀態

//    正常狀態
    [imgBtn setImage:[UIImage imageNamed:@"btn01"] forState:UIControlStateNormal];
//    選中狀態
    [imgBtn setImage:[UIImage imageNamed:@"btn03"] forState:UIControlStateSelected];

//    高亮
    [imgBtn setImage:[UIImage imageNamed:@"btn02"] forState:UIControlStateHighlighted];

#pragma mark 添加點擊事件
    [imgBtn addTarget:self action:@selector(imgButton:) forControlEvents:UIControlEventTouchUpInside];

    [self.view addSubview:imgBtn];

}

3.實現一下按鈕的點擊事件

-(void)imgButton:(UIButton *)sender{

    sender.selected = ! sender.selected;
}


4,最後在viewDidLoad調用一下我們剛剛創建顯示圖片的按鈕

“`

  • (void)viewDidLoad {
    [super viewDidLoad]

    [self creatImageButton];
    }

模擬器運行效果如下
普通狀態下顯示圖片的按鈕
這裏寫圖片描述

高亮狀態下的按鈕
這裏寫圖片描述

選中狀態下的按鈕

這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章