我有UIImageView
一个视图 a StoryBoard
,IBOutlet
连接正确(有双重和三重检查),要显示的图像被添加到正确的目标等。(现在已经调试了一天)UIImageView
显示图像如果我在界面生成器中设置它们。
但是,如果我将UIImageView.image
属性设置为加载任何图像的有效UIImage
(调试时我什至可以看到预览),它总是显示第一个图像,而不是新图像,或者如果我在 IB 中将其留空,它会保持 nil 值。
仅当我在 StoryBoard 的另一个视图中尝试相同的操作并且UIImageView
正确显示 UIImage 的内容时,才会在此视图中发生这种情况。
任何线索我们将不胜感激。
编辑:
感谢您的回复,也测试过从一个按钮设置它,代码是这个代码:
属性声明为:
@property (strong, nonatomic) IBOutlet UIImageView *theRecomendationImage;
已经测试过弱和强,只是为了确定。
实现(IBAction
测试它被调用)
- (IBAction)changeImage {
UIImage *theImageToTint = [UIImage imageNamed:@"Sunny"];
// theImageToTint = [theImageToTint imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate];
self.theRecomendationImage.tintColor = [UIColor yellowColor];
self.theRecomendationImage.image = theImageToTint;
}
调试时,如果您检查 theImageToTint 的值,它是一个有效的图像(不是 nil),您甚至可以快速查看图像。但是当我将它分配给UIImageView
值时,它总是为零。没有错误,只是保持零。
感谢您的关注,对于不完整的问题,我们深表歉意。
编辑:
如果你执行
po self.theRecomendationImage.image
在执行分配前后的调试控制台中:self.theRecomendationImage.image = theImageToTint; 值为 nil。
编辑:
如果您添加UIImageView
by 代码,它会在您为其分配新图像时工作并得到更新,这让我指出了一些Storyboard
问题。
有什么工具可以验证故事板吗?