[xcode] 頁面切換 1

頁面切換同樣也是不可或缺的基礎,但總不能樣樣都是從Storyboard來連連看吧!

實際上應用時,不可能將所有的按鈕都用連連看的方式去做,或者是在一些動態產生

變化按鈕,又要對應不同頁面時,就要使用這樣的方式來做。


Storyboard規劃如下 

有兩個頁面

Viewcontroller

viewcontroller2

並沒有任何按鈕跟連線連到Viewcontroller2



接下來請選到Viewcontroller2,並且勾選use storyboard id

填入viewcontroller2  ,這個名稱可以隨意取,不過要記得你自己取了啥名,我自己會取

跟class一樣名稱居多。

viewcontroller.h

import  viewcontroller2.h  要切換的頁面

宣告一個按鈕元件



viewcontroller.m

-(void)viewdidload();

同樣的初始化按鈕並且加到頁面當中

-(ibaction)actiontopage2();

這邊講解一下self.storyboard   也就是使用的storyboard 但是當你的project有其

他storyboard 你也可以指向其他的,既然知道了是哪個storyboard接著就要找到

是哪個頁面,之前設定的Storyboard ID就是填入"viewcontroller2"。


那麼為何這邊不使用    ViewController2 *view2 = [[ViewController2 alloc]init];

實際上也是可以的,但是差異在,當你的Storyboard有規劃元件或一些設計時,

會不顯示,他只會去做viewcontroller2 不管storyboard。



setmodatransitionstyle   是過場動畫。沒有這一行也行,會使用預設的過場方式。


presentviewcontroller 這一行就是實際上換頁面




viewcontroller2.h

宣告一個回到上頁的按鈕


viewcontroller2.m

-(void)viewdidload();

返回上頁按鈕初始化,加入頁面中


這邊很簡單的dismissviewcontrolleranimated 就可以回上頁了




執行畫面  頁面1


執行畫面 頁面2



有些舊的文章會用storyboard把返回上一頁,又連回去原本的頁面,我個人並不建議

用這樣的方式去做,在頁面多的時候,會耗費很多的記憶體,執行效率也會被拖垮



沒有留言:

張貼留言