0

私はビューコントローラの配列を作成し、それらをUINavigation Controllerに追加してからモーダル表示します。ナビゲーションコントローラ "戻るボタン"テキスト:提示されたモーダル

ただし、各ビューの「戻る」ボタンにテキストを「戻る」以外に設定することはできません。

これはコードです:

UIBarButtonItem *barButton = [[UIBarButtonItem alloc] init]; 
barButton.title = @"Acknowledge Briefings Read"; 
self.navigationItem.backBarButtonItem = barButton; 

を...しかし、それは動作しません:

//The View Controllers and Array 
VC1 *vc1 = [[VC1 alloc] initWithNibName:@"VC1" bundle:nil]; 
VC2 *vc2 = [[VC2 alloc] initWithNibName:@"VC2" bundle:nil]; 
VC3 *vc3 = [[VC3 alloc] initWithNibName:@"VC3" bundle:nil]; 
NSArray * viewControllers = [NSArray arrayWithObjects:vc3, vc2, vc1, nil]; 

// Create the nav controller and set the view controllers. 
UINavigationController* theNavController = [[UINavigationController alloc] 
initWithRootViewController:vc3]; 
[theNavController setViewControllers:viewControllers animated:NO]; 

// Display the nav controller modally. 
[self presentModalViewController:theNavController animated:YES]; 

私は、各VCの初期化に次のように試してみました。何か案は?どうもありがとう。

また、私は理想的にはスタックを「転送」方向にナビゲートしたいと思っています。これはナビゲーションコントローラを使用して可能ですか?

答えて

0

initではビューでは何もできません。 initには何も描画されていないので、viewDidLoad(またはwillAppearまたはdidAppear)を待つ必要があります(navコントローラの場合は、前の項目が影響を受けます)。ここで

は、私が(のviewDidLoadで)何をすべきかです:

UIBarButtonItem *doneButon = [[UIBarButtonItem alloc] initWithTitle:@"Done" style:UIBarButtonItemStylePlain target:self action:@selector(doneButtonPressed)]; 
[self.navigationItem setRightBarButtonItem:doneButon]; 
+0

こんにちはアダム、ありがとう。私はこのアプローチを使用して、ナビゲーションコントローラスタックの次のビューコントローラに到達する方法を知っていますか? –

1

ねえ、それはあなたのために働くかもしれない:

self.navigationController.navigationBar.backItem.title = @"Acknowledge Briefings Read"; 

このコードは、現在表示されているのViewControllerに行く必要があります。あなたは

+0

ありがとう!それはうまくいった。 –

+0

オハイオ州グレート、あなたが答えを受け入れることを望むなら...: – Nilesh

0

バックボタンのテストが自動的にスタックの一番上にあるのUIViewControllerのtitle属性に設定されているviewWillApear

乾杯でそれを追加する必要があります。そのため、各ビューコントローラーのviewDidAppearまたはviewDidLoadでは、新しいビューがスタックにプッシュされたときに、「戻る」ボタンに表示するテキストにself.titleを設定します。

+0

ありがとう。あなたはnabボタンを画面の右側に表示する方法を知っていますか?私は、VCのスタックを通って前進するように見せたいと思っています。画面の左側にnabボタンが現れます。 –

+0

@LeeBarringer View Controller Programming Guideを読んで、アプリケーションの設計についての洞察を得てください。 –

+1

このような非常に特殊な問題ではあまり役に立ちません。経験は、私がそうするように、このサイトの非常に親切な人々の洞察に基づいて、前進する方法、またはこれが欠けている方法です。 –

関連する問題