4

我有UIImageView一个视图 a StoryBoardIBOutlet连接正确(有双重和三重检查),要显示的图像被添加到正确的目标等。(现在已经调试了一天)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。

编辑:

如果您添加UIImageViewby 代码,它会在您为其分配新图像时工作并得到更新,这让我指出了一些Storyboard问题。

有什么工具可以验证故事板吗?

4

1 回答 1

1

只需确保图像格式是.png代替.jpg或任何其他格式。

于 2015-08-24T13:44:57.500 回答