我刚刚学习KVO。这是我第一次实施它,我很困惑,试图保持一切。
现在我有一个连接到数组控制器的弹出按钮,其内容由字典提供。
我有第二个弹出按钮,其filterpredicate设置为第一个弹出按钮的选择值。
我需要添加KVO以观察第一个弹出按钮选择中的更改,并相应地更改filterpredicate。
到目前为止,我有这个...... [nameController setContent:itemDictionaries];
self.predicate = [NSPredicate predicateWithFormat:@"item == %@", [[nameController selection] valueForKeyPath:@"item"]];
[itemListController setFilterPredicate:self.predicate];
如何将KVO添加到弹出按钮的选择中,然后更新谓词的值?
答案 0 :(得分:1)
解决了它。 而不是KVO,我只是将第一个弹出式按钮设为动作
- (IBAction)SelectionChanged:(id)sender
{
NSString *newItem = [[self.NamePopUp selectedItem] title];
NSPredicate *newPredicate = [NSPredicate predicateWithFormat:@"item == %@", newItem];
[itemListController setFilterPredicate:newPredicate];
}