私は、Xcodeのストーリーボードを介してUIの大部分がセットアップされているアプリケーションで作業しています。私がしたいことの1つは、Interface Builder経由でアクセスできるデフォルトの "Stencilled"イメージではなく、TabBar上のUITabBarItemsの "Finished"イメージを指定することです。ストーリーボードを使用しているときに完成したTabBarイメージを設定しますか?
ここで私はawakeFromNibでこれをやっていますが、物事がストーリーボードからアーカイブ解除されたときに実行する必要があるので、私は現在initWithCoderを使用するべきかどうか確信しています:それは最高の問題ですか?
- (void)awakeFromNib {
[super awakeFromNib];
UIImage *tabIn = [UIImage imageNamed:@"TAB_IN"];
UIImage *tabOut = [UIImage imageNamed:@"TAB_OUT"];
UITabBarItem *tabBarItem = [self tabBarItem];
[tabBarItem setFinishedSelectedImage:tabOut withFinishedUnselectedImage:tabIn];
[tabBarItem setTitle:@"TWO"];
}
- (id)initWithCoder:(NSCoder *)aDecoder {
self = [super initWithCoder:aDecoder];
if(self) {
UIImage *tabIn = [UIImage imageNamed:@"TAB_IN"];
UIImage *tabOut = [UIImage imageNamed:@"TAB_OUT"];
UITabBarItem *tabBarItem = [self tabBarItem];
[tabBarItem setFinishedSelectedImage:tabOut withFinishedUnselectedImage:tabIn];
[tabBarItem setTitle:@"TWO"];
}
return self;
}
OR
は私がinitWithCoder:
がアウトレットとアクションがまだフックアップされていません(ストーリーボードに含まれる)ニブからアンアーカイビングのオブジェクトの開始時に呼び出されることを理解しています。また、アーカイブ解除プロセスの最後に
awakeFromNib
が呼び出され、viewControllerが使用可能になったことを知らせることも理解しています。
awakeFromNib
を使用しても、アウトレットとアクションがまだ繋がっていない問題にぶつからないようにするには問題がないかもしれませんが、自分のやりたいことだけに依存しているというのが私の気持ちです。
EDIT:
はawakeFromNib
とその逆に並置としてあなたがinitWithCoder:
を使うだろうか状況、私はこれを言い換えるてみましょうか?
ありがとうエゴール、大変感謝しています。 – fuzzygoat