【发布时间】:2011-11-30 13:06:20
【问题描述】:
我想要一个静态 UIImage 以便我可以从不同的类访问它。我试过这种方法,但没有奏效:
制作了 Constans.h 文件:
static UIImage *myImage;
然后我在需要的地方导入这个标题。我认为此时 myImage 是静态的,对这个对象所做的任何更改都会随处可见。但看起来每个类都在处理它自己的 myImage 实例。有没有办法拥有这样的静态 UIImage?
编辑:
AppDelegate 中的属性工作正常。我现在有了静态 UIImage,但仍然没有达到预期的效果。
我在 ViewController 中有一个 UIImageView。我将图像加载到我的 delegate.myImage 之后:
delegate.myImage = [UIImage imageNamed:@"blah.png"];
myImageView.image = delegate.myImage;
图像已加载,但是我想在 AppDelegate 中更改它之后,但是当我以这种方式更改 myImage 时:
delegate.myImage = [UIImage imageNamed:@"blah2.png"];
myImageView 没有任何变化。就像 myImageView.image = delegate.myImage 复制了 myImage 的内存地址,所以如果我更改了 myImage 的引用,它不会影响 myImageView .图像。我想要一个 UIImage,在任何更改之后它也会影响 myImageView。
除了在 AppDelegate 中引用 myImageView 之外,还有其他方法吗?
【问题讨论】:
-
将其作为 appDelegate 类的属性。因为 appDelegate 类对象 inSelf 是静态副本。
标签: iphone objective-c ios static uiimage