2012-02-28 56 views
0

我有一个uiviewcontroller,它包含自定义控件;我需要监视它中的一个属性,使其成为显示器控件属性

如果它变为true我隐藏导航栏中的后退按钮,否则允许它。

适用于iOS和Objective C;如果是的话如何实现该功能

回答

0

这是可能的。

假设你的对象有一个名为“boolValue”属性:

[obj addObserver:self forKeyPath:@"boolValue" options:NSKeyValueObservingOptionNew context:NULL]; 



- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context 
{ 
    BOOL value=[object boolValue]; 
    if (value) 
    { 
    // hide back button 
    } 
    else 
    { 
    // show back button 
    } 
} 
+0

记住不是在需要的时候它来除去观测了('viewDidUnload'?),否则你将[泄漏观测信息(HTTP:/ /stackoverflow.com/questions/9488504/observation-info-was-leaked)。每当你这样做,上帝就会杀死一只小猫。 – ayoy 2012-02-28 23:50:21