2

rootviewcontroller.mで実行しているUIToolbarを追加する方法を知っています。

[self.navigationController.view addSubview:toolbar];

ただし、他のビューに移動すると、ツールバーは表示されたままになります。これは問題ありませんが、ツールバーにアクセスして非表示/表示するにはどうすればよいですか?

rootviewcontrollerの内部では、これを使用します。

toolbar.hidden = NO;

しかし、rootviewcontroller.mの外でこれを行う方法を見つけることができないようです。

他のクラスから隠す例を教えてください。

4

4 に答える 4

3

2つのオプションがあります。

1)外部クラスがツールバーオブジェクトにアクセスできるように、コントローラーにプロパティを追加します。

2)ツールバーをよろめくために使用できる関数をルートビューコントローラーに追加します。

外部クラスが実行できることを制限するため、#2をお勧めします。

例えば

-(void) hideToolbar:(BOOL)hidden
{
  toolbar.hidden = hidden;
}
于 2009-03-19T20:02:47.363 に答える
2

self.navigationController.view問題は、それを;に追加してはならないということです。に追加する必要がありますself.view。それを修正すると、修正されるはずです。

于 2009-03-19T20:29:25.087 に答える
0

バーを表示したくないView Controllerの初期化中に、次の行を追加してみてください。

[self.navigationController setToolbarHidden:YES animated:NO];

F.

于 2011-01-02T13:11:09.000 に答える
-1

アンドリュー・グラントの答えは、あなたが探しているものです。ただし、メソッドの名前を次のように変更する必要があります。

-(void) isToolbarHidden:(BOOL)hidden {
    toolbar.hidden = hidden;

}

コードを見ると、その方が理にかなっています。

于 2009-11-21T17:07:45.097 に答える