0

ナビゲーションバーの右側に3つのボタンを作成したい。ストーリーボードを使用してUIViewコントローラーを作成しています。DetailViewControllerは、ストーリーボードを使用してナビゲーションバーを埋め込み、プログラムで3つのUIBarButtonItemを作成し、これらを配列に追加して、navigationitemに割り当てます。これは正常に機能しています。

UIBarButtonItem *Button1 = [[UIBarButtonItem alloc]initWithTitle:@"Button1" style:UIBarButtonItemStylePlain
                                                           target:self action:@selector(Button1Clicked:)] ;

UIBarButtonItem *Button2 = [[UIBarButtonItem alloc] initWithTitle:@"Button2" style:UIBarButtonItemStylePlain
                                                             target:self action:@selector(Button2Clicked:)] ;

UIBarButtonItem *Button3 = [[UIBarButtonItem alloc] initWithTitle:@"Button3" style:UIBarButtonItemStylePlain
                                                              target:self action:@selector(Button3Clicked::)] ;

self.navigationItem.rightBarButtonItems =
[NSArray arrayWithObjects:Button1,Button2,Button3, nil];

私は別のviewcontrollerを持っています。これはmodalviewcontreollerです。ストーリーボードを使用してビューコントローラーを作成し、ナビゲーションコントローラーではなくナビゲーションバーを追加しています。次に、ナビゲーションバーにボタンを追加するために同じ方法を使用していますが、ボタンは表示されていません。誰もがこの問題を解決する方法を知っています。

4

2 に答える 2

1

viewControllerが含まれている場合は、UINavigationController次を使用できます。

self.navigationItem ...

私が見るようにこれはうまくいきます。ただし、viewController(この場合はモーダル)がにない場合は、次の方法でUINavControllerアクセスする必要があります。UINavigationItem

someNavigationBar.topItem ...

したがって、IBOutletnavigationBarにを設定すると、コードは次のようになります。

UIBarButtonItem *Button1 = ...
UIBarButtonItem *Button2 = ...
UIBarButtonItem *Button3 = ...

yourNavigationBar.topItem.rightBarButtonItems = [NSArray arrayWithObjects:Button1, Button2, Button3, nil];
于 2012-04-14T19:28:47.213 に答える
0

UINavigationBar代わりに追加してくださいUINavigationItem

于 2012-04-14T13:30:44.473 に答える