最近UIViewsとちょっと混乱していますが、この時点までにこれらを使用しています。initの間にIBOutlet UIViewを配列に追加する
私はUIViewControllerを持っていますが、これには5つのビューが含まれています。彼らは簡単に私がviewArrayという配列内にそれらすべてを維持することを決定し維持するようにするには
IBOutlet UIView *view1;
IBOutlet UIView *view2;
IBOutlet UIView *view3;
IBOutlet UIView *view4;
IBOutlet UIView *view5;
:私は、実行時にそれらを交換したいと思っていますように私はこれらのビューのためにIBOutletsを作成しました。今、私は次のように配列にビューを追加しようとしています:
viewArray = [NSArray arrayWithObjects:view1, view2, view3, view4, nil];
これは私のUIViewControllerクラスのinit関数に呼び出されています。すべてのIBOutletをxib/interfaceファイルの関連するビューにリンクしましたが、初期化されていないようです。さらにデバッグすると、init関数が呼び出されるまでビューが初期化されていないように見えますか?
どうすればこれらのオブジェクトの配列を作成できますか?ビュー自体が表示される前に関連するビューを選択する必要があるため、viewDidLoadはオプションではありません。
私はあなたが物事のタグを取得し、暗黙的に使用してそれらを設定することができることを知っている:
imageExample = (UIImageView *)[self.view viewWithTag:100];
しかし、確かに、それは、もともと初期化ビュー内のタグを検索されるように、これは、ビューを見つけるために使用することができます(view1)?高度で任意のヘルプ
おかげで、 種類よろしく、 エリオット
ん 'viewArray = [NSArrayのarrayWithObjects:.mファイルで
:.hファイルで
... '文がコードに表示されますか?あなたの 'init'メソッドですか? – dasblinkenlight
はい、initにあります。 –
私は 'IBOutlet'変数の値が最初にそれらにアクセスする必要がある時までに無限に設定されていると思います。 – dasblinkenlight