VC2.hファイルで次の宣言を使用しています。
@interface VC2 : UIViewController
{
NSArray *buttons;
}
@property (nonatomic, retain) IBOutletCollection(UIButton) NSArray *buttons;
@end
VC2のすべてのボタンはコレクションに関連しています。VC1では、prepareforsegueを次のように使用しています。
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([[segue identifier] isEqualToString:@"VC1Segue"] == TRUE)
{
[self getPictureNamesFromDB];
VC2 *vc = [segue destinationViewController];
UIImage *backgroundImage = [UIImage imageNamed:@"XXXXX.png"];
for(UIButton *button in vc.buttons) {
[button setBackgroundImage:backgroundImage forState:UIControlStateNormal];
}
}
}
ボタンコレクションが初期化されるのは、次のビューに移動したときだけであり、コンストラクターをthrowすることで何を意味するのか理解できませんでした...
ありがとうございました