0

我想将 UIImage 的 .image 属性设置为由 NSUserDefault 值指定的变量。但是,我遇到了一些没有意义的错误!

这是我的代码:

NSString *currentSample = [defaults stringForKey:@"selectSample"];
_mySample.image = [UIImage imageNamed:@"%@", currentSample];

...甚至更好:

_mySample.image = [UIImage imageNamed:@"%@", [defaults stringForKey:@"selectSample"]];

但是不断收到一条错误消息,指出“方法调用的参数太多,预期为 1,有 2 个。” 有人可以帮我调试这个简单的代码吗?

4

1 回答 1

2

当您只使用字符串文字时,您不需要传递格式字符串和替换。做

_mySample.image = [UIImage imageNamed:currentSample];

反而。

如果你确实需要替换,你仍然会传递一个格式字符串和你应该只传递一个字符串的替换......试试

NSString *imageName = [NSString stringWithFormat:@"Something that needs formatting %@", currentSample]; 
_mySample.image = [UIImage imageNamed:imageName]; 

反而。

于 2013-05-31T03:30:48.143 回答