0

インターネット上で何も見つからないという奇妙な問題に直面しています。下部にカスタムボタンを含むツールバーを表示している UIViewController があります。そのボタンは次のように追加されます..

List<UIBarButtonItem> items = new List<UIBarButtonItem>();

UIButton _helpButton = new UIButton();
//....
// code to create our custom button with background
// .....

UIBarButtonItem helpBarButton = new UIBarButtonItem(_helpButton);
items.Add(helpBarButton);

VC を表示すると、ツールバーが表示され、すべてが見栄えがよくなります。VC には、別の VC (別の UINavigationController のルート ビューとして) をモーダル FormSheet として開くボタンがあります。ではViewDidAppear、ツールバーも表示に設定します。これにより、同じヘルプ ボタンが表示され、これもうまく機能します。

モーダル VC が表示されると、全画面表示ではないため、バックグラウンドで他の VC を見ることができます。バックグラウンド VC のツールバーには、ヘルプ ボタンが表示されなくなりました (ツールバーは引き続き表示されます)。ヘルプ ボタンを削除または非表示にするコードがないため、何が起こっているのかわかりません。

Objective-C でこのシナリオを設定する方法がよくわからないので、これが iOS の問題なのか、Xamarin.iOS の問題なのか、ツールバーの理解の問題なのかわかりません。

また、モーダル VC にツールバーを表示しない場合、バックグラウンド VC のツールバーはヘルプ ボタンを保持します。バックグラウンド VC は 1 つの UINavigationController によって表示され、モーダル VC は別の UINavigationController によって表示されるため、これは私には理解できません。あるツールバーで何かを行うと、他のツールバーに影響するのはなぜですか?

4

1 に答える 1