質問

これはばかげた質問かもしれませんが、 UINavigationController によって管理される複数のビューにわたって正しい UIBarButtonItem を保持することは可能ですか?多くの場合、同じ右 UIBarButtonItem を共有するビューの進行がありますが、新しいビューを UINavigationController にプッシュすると、毎回ボタンを再定義する必要があります変更されていません。ほとんどの場合、あるビューから次のビューへの顕著な遷移アニメーションは、まったく同じボタンが一時的にフェードアウトしてから元に戻るので、実際に視覚的な変化がないため不要です。 UINavigationBar のサブビューとして UIButton を追加することを検討し、「右バーボタン」を実現する必要があります。この方法で効果がありますか?

役に立ちましたか?

解決

これはアプリで行いました。ユーザーがナビゲートするときに1つのUIViewControllerから別のUIViewControllerにスワップする単一のUIBarButtonItemを作成しました。その秘trickは、navigationController:willShowViewController:animated:メソッドであるUINavigationControllerDelegateを使用することでした。発信UIViewControllerのrightBarButtonItemをnilに設定し、着信コントローラのrightBarButtonItemをボタンに設定します。管理するのは大変ですが、うまくいきます。

他のヒント

UIBarButtonItemsは、nib / xibファイルのスタンドアロンインスタンスとして作成できます。 Interface builderでボタンを構築することを妨げる特別なことが何も行われていない場合、ボタンを再利用する必要がある各View ControllerのUINavigationItemのrightBarButtonItemプロパティに接続する必要があります。客観的なcは必要ありません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top