iOS界面間的跳轉(zhuǎn)思考

本文基于OC語言翠肘,淺淺探索一下iOS幾種跳轉(zhuǎn)方式。先看一下本人做的思維導(dǎo)圖。

iOS界面幾種跳轉(zhuǎn)方式

iOS分可視化開發(fā)(storyboard和xib)和代碼開發(fā)兩種方式嚎花。當(dāng)我們只使用某一種開發(fā)方式進(jìn)行開發(fā)的時候畜疾,界面跳轉(zhuǎn)可能不會遇到什么問題赴邻。但是當(dāng)我們混合開發(fā)的時候,界面間的跳轉(zhuǎn)有時候會遇到一些莫名其妙的問題啡捶。而實際開發(fā)項目中姥敛,經(jīng)常因?qū)嶋H需求混合各種開發(fā)方式。因此瞎暑,本人羅列了一下界面間跳轉(zhuǎn)可能遇到的九種情況彤敛。經(jīng)過測試与帆,實際上有三種跳轉(zhuǎn)的寫法。分別是:

1.xxx界面向storyboard界面跳轉(zhuǎn)

2.xxx界面向xib界面跳轉(zhuǎn)

3.xxx界面向代碼界面跳轉(zhuǎn)

現(xiàn)在墨榄,我們來一一測試一下玄糟。xxx界面向storyboard界面跳轉(zhuǎn)。先創(chuàng)建一個工程袄秩,如圖:

創(chuàng)建工程

然后再新建一個storyboard

新建storyboard

storyboard創(chuàng)建完是空白的

storyboard創(chuàng)建之后的樣子

我們要拖一個UIViewcontroller進(jìn)storyboard內(nèi)

往內(nèi)拖

拖完之后的界面我們就比較熟悉了

拖完UIViewcontroller的樣子

再創(chuàng)建一個UIVIewController的類

創(chuàng)建第二個storyboard關(guān)聯(lián)的VC

選中故事板的類阵翎,把剛剛創(chuàng)建的類和storyboard的UIVIewcontroller關(guān)聯(lián)起來

關(guān)聯(lián)storyboard和VC

再順便寫一下storyboard的ID,等下會用到

storyboard的VC的ID

關(guān)聯(lián)完之后我們回到第一個UIViewController寫跳轉(zhuǎn)方法之剧,為了方便展示跳轉(zhuǎn)效果郭卫,我們寫個btn

創(chuàng)建按鈕

//故事板跳故事板

UIButton*btn = [UIButtonbuttonWithType:UIButtonTypeCustom];

[self.viewaddSubview:btn];

btn.backgroundColor= [UIColorredColor];

[btnaddTarget:selfaction:@selector(btnClick)forControlEvents:UIControlEventTouchDragInside];

btn.frame=CGRectMake(100,100,100,100);

接下來我們在btn里面寫跳轉(zhuǎn)方法

寫跳轉(zhuǎn)方法

//故事板--跳到--》故事板

- (void)btnClick

{

UIStoryboard*myStoryboard = [UIStoryboardstoryboardWithName:@"Second"bundle:nil];

UIViewController*secondVC = [myStoryboard ?instantiateViewControllerWithIdentifier:@"secondViewController"];

[selfpresentViewController:secondVCanimated:YEScompletion:nil];

NSLog(@"跳轉(zhuǎn)");

}

這樣就完成了跳轉(zhuǎn),我們運行測試一下試試

運行模擬器
點擊按鈕實現(xiàn)跳轉(zhuǎn)

這樣我們就實現(xiàn)了xxx界面向storyboard界面跳轉(zhuǎn)猪狈。下面我們來看看另一種跳轉(zhuǎn)方式 xxx界面向xib界面跳轉(zhuǎn)

首先箱沦,我們先創(chuàng)建一個xib界面

xib文件打上勾

創(chuàng)建完,我們開始來準(zhǔn)備跳轉(zhuǎn)雇庙,跳轉(zhuǎn)之前給xib設(shè)置一個背景色谓形,方便區(qū)分

設(shè)置背景顏色

好了,回到最初的ViewController來實現(xiàn)跳轉(zhuǎn)到xib文件去疆前,首先寒跳,導(dǎo)入xib那個類的頭文件,還有再寫個按鈕來實現(xiàn)跳轉(zhuǎn)

導(dǎo)入頭文件竹椒,創(chuàng)建btn

#import"XIBViewController.h"

//故事板跳xib

UIButton*btnXIB = [UIButtonbuttonWithType:UIButtonTypeCustom];

[self.viewaddSubview:btnXIB];

btnXIB.backgroundColor= [UIColorblueColor];

[btnXIBaddTarget:selfaction:@selector(btnXIBClick)forControlEvents:UIControlEventTouchDragInside];

btnXIB.frame=CGRectMake(100,210,100,100);

來實現(xiàn)跳轉(zhuǎn)一下

編寫btn的點擊方法

//故事板--跳到--》xib

- (void)btnXIBClick

{

XIBViewController*xibVC=[[XIBViewControlleralloc]initWithNibName:@"XIBViewController"bundle:nil];

[selfpresentViewController:xibVCanimated:YEScompletion:nil];

}

我們來運行測試一下效果童太。

運行效果

藍(lán)色按鈕是跳轉(zhuǎn)到xib界面的,我們點擊一下看看

實現(xiàn)跳轉(zhuǎn)到xib界面

點擊后實現(xiàn)跳轉(zhuǎn)胸完。我們這樣就實現(xiàn)了xxx界面向xib界面跳轉(zhuǎn)书释。最后我們再來看看最普遍的跳轉(zhuǎn)方式 xxx界面向代碼界面跳轉(zhuǎn)。

同樣的赊窥,先創(chuàng)建一個UIViewController爆惧,我們修改一下它的背景顏色為綠色,然后進(jìn)行跳轉(zhuǎn)

創(chuàng)建一個純代碼界面

self.view.backgroundColor=[UIColorgreenColor];

回到UIViewController來寫跳轉(zhuǎn)方式

編寫跳轉(zhuǎn)方法

#import"CodeViewController.h"

//故事板跳code

UIButton*btnCode = [UIButtonbuttonWithType:UIButtonTypeCustom];

[self.viewaddSubview:btnCode];

btnCode.backgroundColor= [UIColorpurpleColor];

[btnCodeaddTarget:selfaction:@selector(btnCodeClick)forControlEvents:UIControlEventTouchDragInside];

btnCode.frame=CGRectMake(100,320,100,100);

//故事板--跳到--》code

- (void)btnCodeClick

{

CodeViewController*codeVC = [[CodeViewControlleralloc]init];

[selfpresentViewController:codeVCanimated:YEScompletion:nil];

}

運行測試一下

運行效果

點擊跳轉(zhuǎn)按鈕

點擊按鈕跳轉(zhuǎn)成功

成功實現(xiàn)了xxx界面向代碼界面跳轉(zhuǎn)锨能。以上就是iOS界面的幾種不同開發(fā)界面之間的跳轉(zhuǎn)方式扯再。希望對看到此博客的人有所幫助。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末址遇,一起剝皮案震驚了整個濱河市熄阻,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌倔约,老刑警劉巖秃殉,帶你破解...
    沈念sama閱讀 218,755評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡复濒,警方通過查閱死者的電腦和手機(jī)脖卖,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,305評論 3 395
  • 文/潘曉璐 我一進(jìn)店門乒省,熙熙樓的掌柜王于貴愁眉苦臉地迎上來巧颈,“玉大人,你說我怎么就攤上這事袖扛≡曳海” “怎么了?”我有些...
    開封第一講書人閱讀 165,138評論 0 355
  • 文/不壞的土叔 我叫張陵蛆封,是天一觀的道長唇礁。 經(jīng)常有香客問我,道長惨篱,這世上最難降的妖魔是什么盏筐? 我笑而不...
    開封第一講書人閱讀 58,791評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮砸讳,結(jié)果婚禮上琢融,老公的妹妹穿的比我還像新娘。我一直安慰自己簿寂,他們只是感情好漾抬,可當(dāng)我...
    茶點故事閱讀 67,794評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著常遂,像睡著了一般纳令。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上克胳,一...
    開封第一講書人閱讀 51,631評論 1 305
  • 那天平绩,我揣著相機(jī)與錄音,去河邊找鬼漠另。 笑死捏雌,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的酗钞。 我是一名探鬼主播腹忽,決...
    沈念sama閱讀 40,362評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼砚作!你這毒婦竟也來了窘奏?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,264評論 0 276
  • 序言:老撾萬榮一對情侶失蹤葫录,失蹤者是張志新(化名)和其女友劉穎着裹,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體米同,經(jīng)...
    沈念sama閱讀 45,724評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡骇扇,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,900評論 3 336
  • 正文 我和宋清朗相戀三年摔竿,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片少孝。...
    茶點故事閱讀 40,040評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡继低,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出稍走,到底是詐尸還是另有隱情袁翁,我是刑警寧澤,帶...
    沈念sama閱讀 35,742評論 5 346
  • 正文 年R本政府宣布婿脸,位于F島的核電站粱胜,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏狐树。R本人自食惡果不足惜焙压,卻給世界環(huán)境...
    茶點故事閱讀 41,364評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望抑钟。 院中可真熱鬧涯曲,春花似錦、人聲如沸味赃。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,944評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽心俗。三九已至傲武,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間城榛,已是汗流浹背揪利。 一陣腳步聲響...
    開封第一講書人閱讀 33,060評論 1 270
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留狠持,地道東北人疟位。 一個月前我還...
    沈念sama閱讀 48,247評論 3 371
  • 正文 我出身青樓,卻偏偏與公主長得像喘垂,于是被迫代替她去往敵國和親甜刻。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,979評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 1.自定義控件 a.繼承某個控件 b.重寫initWithFrame方法可以設(shè)置一些它的屬性 c.在layouts...
    圍繞的城閱讀 3,391評論 2 4
  • *7月8日上午 N:Block :跟一個函數(shù)塊差不多正勒,會對里面所有的內(nèi)容的引用計數(shù)+1得院,想要解決就用__block...
    炙冰閱讀 2,488評論 1 14
  • 溫一段親情 憶一場心暖 想一下爸媽 打一通電話 聊一會家常 寫成微詩集 記錄生活美篇 愛永甜蜜蜜 野草詩會http...
    六月天氣閱讀 175評論 22 26
  • 深秋晚10點祥绞,天很涼,老公和老婆剛鉆進(jìn)開過電熱毯的被窩,被窩里好暖和好舒服啊蜕径。兩個手機(jī)并排放在窗前白色的書桌上两踏,書...
    櫻子先生閱讀 241評論 3 3