2011-10-18 1 views
0

タグを使ってウィンドウ上のすべてのGUIコンポーネントにアクセスしたいと思います。 しかし、私はいくつかのコンポーネントがそうタグを使ってウィンドウ上のすべてのGUIコンポーネントにアクセスすることは可能ですか?

NSButton *aButton=(NSButton*)[self.window.contentView viewWithTag:tag]; 

は0x0のを返します、ウィンドウのサブビューであることがわかった、私は、サブビューに「self.window.contentView」からボタンのスーパービューを変更する必要がありますNSButton

、それは認識して、私はそれらにアクセスする

NSObject *a=(NSObject*)[recognizedSuperView viewWithTag:tag]; 

を使用する場合、各GUIコンポーネントの正しいスーパービューを設定しますタグを使用して、ウィンドウ上のすべてのGUIオブジェクトにアクセスする一般的な方法はありますか?

+0

なぜそれが必要でしょうか?あなたはアウトレットが何であるか知っていますか? – hamstergene

+0

個人的には、任意の数のカスタムビューを作成し、それらをタグで識別する状況を想像することができます。実際、一般的な例は、スクロール可能な画像ブラウザを作成することです - タイトルとしてUILabelsを持つUIImageViewsの多く、など。 –

答えて

1

viewWithTag:は、タグが設定された直接サブビューのみを返します。ビュー階層をナビゲートする場合は、再帰的なメソッドを実装する必要がありますが、ツリー内の多くの可能な場所で同じタグ値を見つけることができることに注意してください。

関連する問題