我正在努力学习在这里玩指针。
我有一个UIImageView
. 我需要将它的image
属性指向另一个UIImageView
simage
属性,这样每当我更改第二个UIImageView
s 图像时,第一个会自动更新。
这里有一些指针操作,但我似乎无法理解它。
我正在努力学习在这里玩指针。
我有一个UIImageView
. 我需要将它的image
属性指向另一个UIImageView
simage
属性,这样每当我更改第二个UIImageView
s 图像时,第一个会自动更新。
这里有一些指针操作,但我似乎无法理解它。
那是不可能的。它们只是指针。例如aImageView
和bImageView
。您可以将它们的图像指针设置为指向相同的UIImage
. 但是改变其中一个不会改变另一个。
也许你可以考虑使用 KVO 来做你想做的事情。更改一个,然后您的方法将被调用。然后在你的方法中你可以改变另一个。
您可以使用Key-Value Observing
来自 Apple 文档
键值观察提供了一种机制,允许对象在其他对象的特定属性发生更改时得到通知。
KVO 的主要好处是您不必实现自己的方案来在每次属性更改时发送通知。
[imageView1 addObserver:self
forKeyPath:@"image"
options:NSKeyValueObservingOptionNew | NSKeyValueObservingOptionOld
context:NULL];
- (void) observeValueForKeyPath:(NSString *)path ofObject:(id) object change:(NSDictionary *) change context:(void *)context
{
// this method is used for all observations, so you need to make sure
// you are responding to the right one.
}
尝试覆盖设置器。创建一个子类UIImageView
,拥有第二个 UIImageView 的属性并编写类似
-(void)setImage:(UIImage*)image{
_image = image;
self.secondImageView.image = image;
}
希望这可以帮助。