XCode Interface Builder開發——1


XCode Interface Builder開發——1

創建Xcode項目

  • 選擇第二個選項

  • 選擇Single View App,點擊Next

  • 設置完后點擊Next


Xcode基本面板

  • 導航面板

  • 工具欄項目


簡單的練手項目

要求:

創建三個按鈕和一個label控件,通過對不同按鈕添加事件來改變label的顏色和字體

步驟:

  • 將label和button拖拽入view controller的view中

  • 點擊要修改的控件,通過打開attributes inspector將按鈕名稱分別改為紅、黃、藍色,label的text改為"這是一段文字“

  • 在ViewController的.m源文件中的類擴展中添加label屬性:

@interface ViewController ()

@property(nonatomic,weak) IBOutlet UILabel *label; //任何需要連接到nib文件中的對象的實例變量都必須以IBOutlet關鍵字開頭

@end
  • 將屬性與剛剛拖入的label控件進行連線

  • 在ViewController的.m源文件中寫入代碼:

//IBAction關鍵字告訴Interface Builder,此方法是一個操作,且可以被某個控件觸發
-(IBAction)clickRedButton:(id)sender{
NSLog(@"按下了紅色按鈕!"); //在控制台通知
self.label.textColor=[UIColor redColor]; //改變label顏色
}

-(IBAction)clickYellowButton:(id)sender{
NSLog(@"按下了黃色按鈕!");
self.label.textColor=[UIColor yellowColor];
self.label.font=[UIFont systemFontOfSize:20.f];
}

-(IBAction)clickblueButton:(id)sender{
NSLog(@"按下了藍色按鈕!");
self.label.textColor=[UIColor blueColor];
self.label.font=[UIFont systemFontOfSize:30];
}
  • 操作同上,將這三個方法分別與三個新建的按鈕進行連線:

  • 點擊運行


重點

  • IBOutlet

該關鍵字的作用是告訴Interface Builder,此實例變量將被連接到nib中的對象。你創建的任何需要連接到nib文件中的對象的實例變量都必須以IBOutlet關鍵字開頭。打開Interface Builder時,它會在項目頭文件中掃描此關鍵字,可以根據這些(且只能根據這些)變量將代碼連接到nib。

@property(nonatomic,weak) IBOutlet UILabel *label;
//該處使用weak是因為控件一直是在ViewController類中存在的,並且為強引用,此處為了不影響控件,其屬性應為弱引用,若為強引用可能會造成在ViewController中刪除控件后,其引用個數仍為1的情況。
  • IBAction

該關鍵字告訴Interface Builder,此方法是一個操作,且可以被某個控件觸發

  • 判斷是否能連線
    1、屬性(IBOutlet)都能連線
    2、方法(IBAction)需要看連線對象是否繼承於UIControl

  • 連接方法補充:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM