何度押しUINavigationController
ても常に同じように表示させる方法はありますか?UIBarButtonItem
4 に答える
1
これを試して-
- サブクラス(
CustomNavigationController
) を作成UINavigationController
し、ビュー コントローラをプッシュするために使用します。 - または で作成
CustomNavigationController
しUIBarButtonItem
ます。&を追加します。init
viewDidLoad
target
action
UINavigationControllerDelegate
にデリゲートを実装し、デリゲート メソッドで各ビュー コントローラーの右または左のバー ボタン アイテムとしてCustomNavigationController
設定します。barButtonYouCreated
使用する
- (void)navigationController:(UINavigationController *)navigationController didShowViewController:(UIViewController *)viewController animated:(BOOL)animated {
viewController.navigationItem.leftBarButtonItem = barButtonYouCreated;
}
また
- (void)navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated
于 2012-11-21T02:45:18.833 に答える
0
UINavigationControllerDelegate
以下のように使用できます。
- (void)navigationController:(UINavigationController *)navigationController
willShowViewController:(UIViewController *)viewController animated:(BOOL)animated
そして、このデリゲート メソッドでは、barButtonItem をナビゲーション バーに追加することを確認できます。
于 2012-11-21T03:18:15.547 に答える
0
プッシュ コントローラを含むグローバルUITabBarController
インを作成しUINavigationController
てから、プッシュ コントローラをnavigationbar
非表示にすることができます。
于 2012-11-21T03:39:29.600 に答える
0
または、UINavigationController カテゴリを使用して、バック アイテムをカスタマイズして、何度プッシュされても、navigationController のバック アイテムに同じビューを設定するだけで済みます。何かのようなもの:
@implementation UIViewController (CustomNavigation)
- (void)setLeftBarButtonItem:(UIButton*)leftview
{
UIBarButtonItem *customItem = [[[UIBarButtonItem alloc] initWithCustomView:leftview] autorelease];
self.navigationItem.leftBarButtonItem = customItem;
[(UIButton*)self.navigationItem.leftBarButtonItem.customView addTarget:self.navigationController action:@selector(popViewControllerAnimated:) forControlEvents:UIControlEventTouchUpInside];
}
于 2012-11-21T04:14:38.690 に答える