2010-11-30 3 views
2

私はすでにこの質問を投稿していますが、今回は投稿コードです。だから、私はuiviewControllerを持って、このviewControllerのviewDidLoadでは、私はnavigationControllerのbackButtonを隠します。 3ページの最初のUIViewControllerのNavControllerのbackButtonが表示されません

実装

- (void)viewDidLoad { 
    [super viewDidLoad]; 

    self.navigationItem.title = @"page2page2page2page2page2"; 

    self.navigationItem.hidesBackButton = TRUE; 
} 

-(IBAction)click 
{ 
    page3 *controller = [[page3 alloc] init]; 

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

    [page3 release]; 
} 

実装...その後、私は新しいのUIViewControllerを押して、そして私はのviewDidLoadに見えるに戻るボタンを設定しますが、戻るボタンはまだ隠されています

- (void)viewDidLoad { 
    [super viewDidLoad]; 

    self.navigationItem.title = @"page3"; 
    self.navigationItem.hidesBackButton = FALSE; 

} 

とタイル「ページ3」は中央の右ではなく上にあるので...このすべては、iOS 4.2

で発生PAGE3は、何の戻るボタンを持っていませんが、スペースがボタンのために作成されます

thx

+0

は、私が試したが、それは動作しませんページ2 – Vjy

+0

のviewwillappearとviewwilldisapperでそれを試してみてください。.. – alex

+0

同様の投稿、私はここで同じ問題が疑わしい。 http://stackoverflow.com/questions/708033/why-is-self-navigationitem-hidesbackbutton-not-working/712918#712918 – Prcela

答えて

1

私は同じ動作をして、私はそれがかなり奇妙であると言わざるを得ない。私はそれが動作しない理由を言うことはできませんが、回避策として、あなたが行うことができます:PAGE2で

- (void)viewDidAppear:(BOOL)animated { 
    [super viewDidAppear:animated]; 
    [self.navigationItem setHidesBackButton:NO animated:YES]; 
} 

とはself.navigationItem.hidesBackButton = ...への呼び出しを削除します。

- (void)viewDidAppear:(BOOL)animated { 
    [super viewDidAppear:animated]; 
    [self.navigationItem setHidesBackButton:YES animated:YES]; 
} 

そしてPAGE3で

両方のコントローラで。

+0

解決策のためのthxロバート、それは完璧ではありませんが、それは仕事です!あなたの問題はios 4.2でも発生しますか? – alex

0

まあ、私は同じ問題をIOS 4.2を実行していた。戻るボタンは表示されません。ランドスケープに自動再生すると、それが表示されます。上記の回避策のどちらもが私のために働くように見えた

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    self.navigationItem.hidesBackButton = YES; 
} 

- (void)viewDidAppear:(BOOL)animated { 
    [super viewDidAppear:animated]; 
    self.navigationItem.hidesBackButton = NO; 
} 
2

);これは、問題を修正...または私たちは、その回避策を言う必要があります - 私のソリューションは、次の操作を実行することでした。しかし、3番目のビューが表示されているとき、私はしばらくの間、ボタンが点滅するのを見ることができました。だから私は、問題(バグ)の変化がpushViewController上の問題をNOにアニメーションアニメーション

に関係している疑いがある私のトリックはNOすぐにYESにsetNavigationBarHiddenし、設定されて離れ

- (IBAction)btnNext:(id)sender { 

    [[self navigationController] pushViewController:thirdViewController animated:NO]; 
} 
+0

AAAARRRGGGHHH。これは私のために働く。しかし、私はアニメーションを欲しかった。なぜアニメーションがそのような違いを生むのだろうと思っています。 – tobinharris

2

行ってきました。

[self.navigationItem setHidesBackButton:NO animated:YES]; 
[self.navigationController setNavigationBarHidden:YES]; 
[self.navigationController setNavigationBarHidden:NO]; 

したがって、このよう戻るボタンがアニメーションすることはないが、それは本当に仕事だと私のマネージャーはそれに気づかなかった; P

関連する問題