你好,歡迎來到IOS教程網

 Ios教程網 >> IOS編程開發 >> IOS開發綜合 >> iOS自學筆記之XIB的使用教程

iOS自學筆記之XIB的使用教程

編輯:IOS開發綜合

軟硬件環境

  • macOS Sierra
  • Xcode 8.2.1

前言

前面學習iOS編程時,畫UI控件的時候用的都是直接敲代碼的方式,基本都是先創建一個相應控件的對象,然後設置對象屬性,最後添加相應的事件響應方法。那強大如Apple這樣的公司有沒有提供一種更方便、更易學的UI編寫方法呢?答案是肯定的。那就是今天本文的主角XIB。它是一種可視化的方法,極大地降低了學習iOS編程的門檻。

XIB實踐

創建一個名叫iOSXIBDemo的工程,打開工程info.plist文件,將Main storyboard file base name這個標簽去掉,如下圖所示

iOS_xib_01

創建一個iOS的Cocoa Touch類RootViewController,作為根視圖控制器,它繼承自UIViewController,並勾選上”Also create XIB file”選項

iOS_xib_02

iOS_xib_03

打開RootViewController.xib文件,從控件區中拖動一個UILabel和一個UIButton,界面上的操作就是這麼簡單,那XIB怎麼跟代碼同步呢?別著急,找到Xcode右上角的雙環標記,單擊它

iOS_xib_05

iOS_xib_06

這樣在同一個畫面就能同時看到XIB和RootViewController.m了,接著開始進行代碼同步。找到XIB中的UILable對象,同時按住Ctrl鍵 + 鼠標左鍵,將光標移動到RootViewController.m中的@interface和@end之間放開,彈出對話框。這裡Connection的類型,對於UILabel來說是選Outlet,而UIButton選的是Action。我的理解是的可以響應事件的控件就選Action

iOS_xib_07

iOS_xib_08

綁定完成後,在對應的代碼前會有個實心圓。在UIButton點擊響應時間函數加句打印

- (IBAction)mButton:(id)sender {
  NSLog(@"button clicked.") ;
}

接下來開始加載根視圖控制器,修改AppDelegate.m中的didFinishLaunchingWithOptions方法,同時需要將RootViewController.h頭文件import進來

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
  // Override point for customization after application launch.

  self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds] ;

  RootViewController* root = [[RootViewController alloc] initWithNibName:@"RootViewController" bundle:[NSBundle mainBundle]] ;

  self.window.rootViewController = root;

  [self.window makeKeyAndVisible] ;

  return YES;
}

最後代碼執行的效果如下

iOS_xib_09

源碼下載:http://xiazai.jb51.net/201701/yuanma/iOS-XIB_jb51.rar

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持本站。

  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved