iOS——Storyboard使用

來源:互聯網
上載者:User
一、segue 1. 簡介 使用 storyboard 可以實現在多個 UIViewController 之間跳轉,實現跳轉的對象就是 UIStoryboardSegue 對象
每個 UIStoryboardSegue 都有三個重要的屬性
1)唯一標誌

@property (nullable,nonatomic, copy,readonly) NSString *identifier;
2)源 UIViewController

@property (nonatomic,readonly) __kindofUIViewController *sourceViewController;


3)目的 UIViewController 

@property (nonatomic,readonly) __kindofUIViewController *destinationViewController;
2. segue 類型 在 storyboard 中有如下幾個類型 1)push push 類型需要的是一個 UINavigationController 對象,必須是在 UINavigationController 對象中推入下一級的 UIViewController 時使用
2)modal 新出現的情境會完全蓋住舊的那個情境,並且使用者只能和新的情境互動,無法和舊的情境互動,除非關閉新的情境才可以
3)custom 自訂 segue 的類型
4)popover(僅iPad) 5)replace(僅 iPad)
3. 分類

在 storyboard 中,segue 分為 自動型 和 手動型

1)自動型 

在 storyboard 中拖入兩個 UIViewController 並設定 background 區分,向第一個 UIViewController 中拖入一個 UIButton,用於跳轉第二個 UIViewController,如圖


點擊 UIButton 並按住 control 向第二個 UIViewController 拖動,出現如圖的畫面,並選擇 Modal(模態轉換)



之後,會在左側的介面出現選中的 segue 類型


可以設定 segue 的 identifier 使其顯示;一般在自動型的 segue 中是不必設定 identifier 的,需要在 手動型中設定,後面會有介紹



此時,點擊 UIButton,就會跳到第二個 UIViewController 了


2)手動型

還是和前面的介面一樣,拖入兩個 UIViewController 並設定 background,向第一個 UIViewController 中拖入一個 UIButton

選擇 第一個視圖控制器 並按住 control 向第二個 UIViewController 連線,如圖



並選中 Modal 類型

使用 手動型的 segue 必須要設定幾個地方

1)設定 segue 的 identifier,例如 這裡設定 “btnSegue”

2)向 UIButton 添加動作事件

- (IBAction)btnClick:(id)sender {        NSLog(@"%@", NSStringFromSelector(_cmd));        // 通過指定的 identifier 來選擇實現跳轉的 segue 對象,就是我們在 storyboard 中連線的那個 segue    [self performSegueWithIdentifier:@"btnSegue" sender:nil];    }


3)跳轉之前會調用該方法

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {    NSLog(@"%@", NSStringFromSelector(_cmd));}

此時,運行程式點擊按鈕,就可以跳轉到第二個 UIViewController ,並且在控制台輸出以下資訊









相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.