ios - 检测 UILabel 文本的变化

标签 ios xcode uilabel nsnotificationcenter

是否可以为 UILabel 的文本属性更改时设置通知?当我找不到用于 UILabel 的那个时,我尝试了用于 UITextFields 的那个,但它没有用。

 [[NSNotificationCenter defaultCenter]
 addObserver:self
 selector:@selector(posttosocial)
 name:UITextFieldTextDidChangeNotification
 object:nowplaying];

最佳答案

您可以使用键值观察 (KVO):

[label addObserver:self
        forKeyPath:@"text"
           options:NSKeyValueObservingOptionNew
                 | NSKeyValueObservingOptionOld
           context:NULL];

- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context
{
    if ([keyPath isEqualToString:@"text"]) {
        /* etc. */
    }
}

关于ios - 检测 UILabel 文本的变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14326566/

相关文章:

ios - UIAlertController 或 UITextField 中的 UILabel 类似 UILabel

iphone - 你如何在 UIImageView (Objective-C) 上显示 UILabel?

ios - 如何在不通知 ios 应用程序的情况下发送数据消息?

ios - 无法识别的用户反复取消定期订阅

ios - 无法从 Xcode 10 中的自定义 "Attach to Process by PID or Name" "embedded framework"后命中断点

ios - 如何使用 UISwipeGestureRecognizer 为左/右滑动 View 设置动画

iphone - 我可以设置 UILabel 来扩展以适应任意数量的文本吗?

iphone - 从其他应用程序请求数据 iphone

ios - 将 GMT 时间添加到 ios 中的给定日期时间(来自服务器)

iphone - 崩溃我的应用程序