基本上,我无法弄清楚如何更改背景图像。我搜索和搜索,似乎无法找到它。有人有主意吗?谢谢!
更新
以下是我用来显示视图的代码: SettingsViewController * settingsView = [[SettingsViewController alloc] initWithNibName:nil bundle:nil]; [self presentModalViewController:settingsView animated:YES];
如果有人需要任何其他帮助,我会尽我所能!谢谢!
答案 0 :(得分:1)
在不同视图之间传递消息可以通过直接调用方法(不是一个好的架构解决方案,但对于小项目可能不是关键)或使用上面的答案中描述的事件驱动模型来完成。 至于对象集合的绑定和后续处理,我建议查看IBOutletCollection关键字,该关键字允许将InterfaceBuilder中的多个对象绑定到类型为NSArray的属性。
属性声明如下所示:
@property (nonatomic, retain) IBOutletCollection(UIButton) NSArray *buttons;
更改所有按钮背景的代码如下所示:
UIImage *backgroundImage = [UIImage imageNamed:@"background.png"];
for(UIButton *button in buttons) {
[button setBackgroundImage:backgroundImage forState:UIControlStateNormal];
}
答案 1 :(得分:0)
您使用setBackgroundImage:forState:
来设置图片。
关于不同的视图部分,这取决于您编写代码的方式。如果带有按钮的视图由不同的视图控制(通过创建实例并使用addSubview:
),那么您可以使用instanceName.buttonName
直接调用它(只要您将其声明为属性-thanks fichek)。
如果你不手动添加视图,而是通过IB,你可以让控制另一个按钮图像的按钮指向该类中的IBAction。
如果这些选项都不起作用,您可以随时使用NSNotificationCenter。