5

我需要在名为 background 的第一个 ViewController 的 UIImageView 中加载不同的背景图像,这取决于 Settings Bundle 中用于切换开关的设置。

在 ViewController.m 中的 -viewWillAppear

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
id toggleSwitchValue = [defaults objectForKey:@"PSToggleSwitchSpecifier"];
BOOL boolToggle = [toggleSwitchValue boolValue];

// setting custom back for viewController
if (boolToggle == YES) {
    [self.backGround setImage:[UIImage imageNamed:@"1.png"]];
    NSLog(@"YES");
} else if (boolToggle == NO) {
    [self.backGround setImage:[UIImage imageNamed:@"2.png"]];
    NSLog(@"NO");
}

我没有警告,但我无法设置将使用的图像。

有什么想法可以解决吗?

4

2 回答 2

2

确保如果视图是从 nib 加载的,则在 viewDidLoad 中或之后修改视图。

于 2012-11-13T15:02:03.010 回答
1

确保您的 IBOutlet 连接正确并使用 [background setImage:] 而不是点表示法。如果两者都不起作用,则您的逻辑或 userDefault 值的设置/读取存在问题。

于 2012-11-13T14:17:22.413 回答