iphone – 当我的UIImageView.image属性更改时,有没有办法得到通知?

iphone – 当我的UIImageView.image属性更改时,有没有办法得到通知?,第1张

概述有没有办法在UI ImageView.image属性上设置一个观察者,所以我可以收到财产何时被更改通知?也许与NSNotification?我该怎么做呢? 我有大量的UIImageViews,所以我需要知道哪个更改发生了. 我该如何做?谢谢. 这被称为键值观察.可以观察到任何符合键值编码的对象,包括具有属性的对象.阅读 this programming guide关于KVO如何工作以及如何使用它 有没有办法在UI ImageVIEw.image属性上设置一个观察者,所以我可以收到财产何时被更改的通知?也许与NSNotification?我该怎么做呢?

我有大量的UIImageVIEws,所以我需要知道哪个更改发生了.

我该如何做?谢谢.

解决方法 这被称为键值观察.可以观察到任何符合键值编码的对象,包括具有属性的对象.阅读 this programming guide关于KVO如何工作以及如何使用它.这是一个简短的例子(免责声明:它可能无效)

- (ID) init{    self = [super init];    if (!self) return nil;    // imageVIEw is a UIImageVIEw    [imageVIEw addobserver:self                forKeyPath:@"image"                   options:NSkeyvalueObservingOptionNew | NSkeyvalueObservingOptionold                   context:NulL];    return self;}- (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.    if (object == imageVIEw && [path isEqualToString:@"image"])    {        UIImage *newImage = [change objectForKey:NSkeyvalueChangeNewKey];        UIImage *oldImage = [change objectForKey:NSkeyvalueChangeoldKey];        // oldImage is the image *before* the property changed        // newImage is the image *after* the property changed    }}
总结

以上是内存溢出为你收集整理的iphone – 当我的UIImageView.image属性更改时,有没有办法得到通知?全部内容,希望文章能够帮你解决iphone – 当我的UIImageView.image属性更改时,有没有办法得到通知?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/web/1063268.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存