UINavigationController

UINaviGationController通常被我們稱為導(dǎo)航欄,他是視圖與視圖之間聯(lián)系溝通的橋梁初狰,一些著名的app都用到了他莫杈。下面我們來(lái)看一下如何建立一個(gè)navigation。

首先奢入,我們通常新建工程是直接將視圖控制器添加到window上筝闹,而現(xiàn)在有navigation以后,就多了一層:

Appdelegete.h:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

{

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

// Override point for customization after application launch.

self.window.backgroundColor = [UIColor whiteColor];

RootViewController *root = [[RootViewController alloc]init];

UINavigationController *nav = [[UINavigationController alloc]initWithRootViewController:root];//先將root添加在navigation上

[_window setRootViewController:nav];//navigation加在window上

[nav release];

[root release];

[self.window makeKeyAndVisible];

return YES;

}

這樣我們的navigation就加載上去了俊马。下面我們來(lái)設(shè)置navigation的屬性:

- (void)viewDidLoad

{

[super viewDidLoad];

// Do any additional setup after loading the view.

[self.navigationController.navigationBar setTranslucent:NO];//設(shè)置navigationbar的半透明

self.title = @"navigationcontroller";//設(shè)置navigationbar上顯示的標(biāo)題

[self.navigationController.navigationBar setBarTintColor:[UIColor purpleColor]];//設(shè)置navigationbar的顏色

self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonItemStyleDone target:self action:Nil];//設(shè)置navigationbar左邊按鈕

self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonItemStylePlain target:self action:Nil];//設(shè)置navigationbar右邊按鈕

[self.navigationController.navigationBar setTintColor:[UIColor whiteColor]];//設(shè)置navigationbar上左右按鈕字體顏色

}

效果圖如下:


這里還有一個(gè)屬性常用丁存,就是:

NSArray *arr = [NSArray arrayWithObjects:@"1",@"2", nil nil];

UISegmentedControl *segment = [[UISegmentedControl alloc]initWithItems:arr];

self.navigationItem.titleView = segment;//設(shè)置navigation上的titleview

效果如下:


對(duì),我們看到中間的字變成了兩個(gè)可選的按鈕柴我,這就是navigation的另一個(gè)屬性:navigationitem.titleview解寝。

下面我們?cè)俳⒁粋€(gè)視圖,看一下兩個(gè)視圖之前是怎樣通信的艘儒。

在第二個(gè)視圖中聋伦,我添加了一個(gè)button來(lái)顯示,并加了一個(gè)成員變量來(lái)接收從第一個(gè)視圖中穿過(guò)來(lái)的值:

@interface SecondViewController : UIViewController

@property (copy,nonatomic) NSString *str;

@end

- (void)viewDidLoad

{

[super viewDidLoad];

// Do any additional setup after loading the view.

self.title = @"second";

UIButton *aBUTTON = [[UIButton alloc]initWithFrame:CGRectMake(30, 30, 50, 30)];

[aBUTTON setTitle:_str forState:UIControlStateNormal];

[aBUTTON addTarget:self action:@selector(clicked) forControlEvents:UIControlEventTouchUpInside];

[self.view addSubview:aBUTTON];

}

然后我將第一個(gè)視圖的右邊按鈕添加一個(gè)事件界睁,點(diǎn)擊按鈕觉增,就會(huì)推出第二個(gè)視圖,并顯示我們傳過(guò)來(lái)的值:

- (void)clicked{

SecondViewController *second = [[SecondViewController alloc]init];

[self.navigationController pushViewController:second animated:YES];

second.str = @"hello!!";

[second release];

}

下面翻斟,我們來(lái)運(yùn)行一下:


點(diǎn)進(jìn)按鈕以后逾礁,我們的第二個(gè)視圖推出,button顯示了傳過(guò)來(lái)的值访惜。

然后我們點(diǎn)擊回button嘹履,還有navigation另外一個(gè)方法:

- (void)clicked{

[self.navigationController popViewControllerAnimated:YES];

}

這樣就可以回到第一個(gè)視圖。

uinavigationcontroller的一些簡(jiǎn)單的屬性就先說(shuō)到這里债热,歡迎留言補(bǔ)充砾嫉,謝謝。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末窒篱,一起剝皮案震驚了整個(gè)濱河市焕刮,隨后出現(xiàn)的幾起案子舶沿,更是在濱河造成了極大的恐慌,老刑警劉巖配并,帶你破解...
    沈念sama閱讀 218,858評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件括荡,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡荐绝,警方通過(guò)查閱死者的電腦和手機(jī)一汽,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,372評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)低滩,“玉大人召夹,你說(shuō)我怎么就攤上這事∷∧” “怎么了监憎?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,282評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)婶溯。 經(jīng)常有香客問(wèn)我鲸阔,道長(zhǎng),這世上最難降的妖魔是什么迄委? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,842評(píng)論 1 295
  • 正文 為了忘掉前任褐筛,我火速辦了婚禮,結(jié)果婚禮上叙身,老公的妹妹穿的比我還像新娘渔扎。我一直安慰自己,他們只是感情好信轿,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,857評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布晃痴。 她就那樣靜靜地躺著,像睡著了一般财忽。 火紅的嫁衣襯著肌膚如雪倘核。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,679評(píng)論 1 305
  • 那天即彪,我揣著相機(jī)與錄音紧唱,去河邊找鬼。 笑死隶校,一個(gè)胖子當(dāng)著我的面吹牛琼蚯,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播惠况,決...
    沈念sama閱讀 40,406評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼宁仔!你這毒婦竟也來(lái)了稠屠?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,311評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎权埠,沒(méi)想到半個(gè)月后榨了,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,767評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡攘蔽,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,945評(píng)論 3 336
  • 正文 我和宋清朗相戀三年龙屉,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片满俗。...
    茶點(diǎn)故事閱讀 40,090評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡转捕,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出唆垃,到底是詐尸還是另有隱情五芝,我是刑警寧澤,帶...
    沈念sama閱讀 35,785評(píng)論 5 346
  • 正文 年R本政府宣布辕万,位于F島的核電站枢步,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏渐尿。R本人自食惡果不足惜醉途,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,420評(píng)論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望砖茸。 院中可真熱鬧隘擎,春花似錦、人聲如沸渔彰。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,988評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)恍涂。三九已至宝惰,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間再沧,已是汗流浹背尼夺。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,101評(píng)論 1 271
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留炒瘸,地道東北人淤堵。 一個(gè)月前我還...
    沈念sama閱讀 48,298評(píng)論 3 372
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像顷扩,于是被迫代替她去往敵國(guó)和親拐邪。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,033評(píng)論 2 355

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