ひとりまとめ

もろもろのメモ

Storyboardもxibも併用で使いたい!

Storyboardを使って画面を作っていると、「こことここ、同じものを使い回したいなー」というUIが出現することがあります。数が限られていれば、新しく加わった「Container View」の出番だと思います。

が、あまりに数が多く使い回そうとすると、繋いでるEnbed Segueだらけになって何が何だか・・・という事態に。

そこで、ViewをStoryboardのようにドラッグドロップで配置して、それをあちこちで使い回すために、xibを使う方法を試してみました。

xibをつくる

メニューからFile → New → File... を選んでウインドウを表示。
左メニューのUser Interface → View を選んで「Next」でxibファイルを作る

Project Navigatorから今作ったxibを選んで、念願のGUIでラベルやボタンなどを配置します。

呼び出すViewControllerを書く

Viewを表示したいタイミングで、次のように記述する。ここでは上で作ったxibの名前を「testView」としています。

    NSArray *array = [[NSBundle mainBundle] loadNibNamed:@"testView" owner:self options:nil];
    customTestView *view = [array objectAtIndex:0];
    [self.view addSubview:view];


これでバッチリ。

いろいろなTipsが載ってる本がでてます。むちゃくちゃ興味あり・・。