0

私は2つの画面を持っています。2番目の画面でナビゲーションバーが変更された後、最初の画面のボタンをクリックしたい。ストーリーボードを使用しています

最初の画面コード

-(IBAction) ChangeSecondPageTitle: (id) sender {

SecondViewController *second=[[self storyboard] instantiateViewControllerWithIdentifier:@"second"];
        second.modalTransitionStyle=UIModalTransitionStyleFlipHorizontal;
          second.detailTitle.topItem.title=@"example";
        [self presentModalViewController:second animated:YES];
}

セカンドスクリーン.h

@property (弱い、非アトミック) IBOutlet UINavigationBar *detailTitle;

4

3 に答える 3

3

2 番目の画面のナビゲーション バーのタイトルを設定しようとしていると思います。

ナビゲーション コントローラーを使用して、2 番目の画面を表示します。

SecondDetailViewController インスタンスで、NSString プロパティを維持します。

@property (strong, nonatomic) NSString *navBarTitle;

viewDidLoad では、タイトルを設定するだけです。

[self setTitle:navBarTitle];

于 2013-06-17T13:05:48.287 に答える
2

実際、コードが機能しない理由は、プロパティをナビゲーション バーに設定してからviewDidLoad呼び出されるためです。そのviewDidLoad中で nib ファイルをロードし、新しく割り当てられた navBar を返します。したがって、これを解決するには、グローバル文字列を最初のビューから設定し、次に 2 番目にviewDidLoad設定しnavbarますtitle。そのためのAdithyaの答えに従ってください。

于 2013-06-17T13:21:49.763 に答える