NSPredicateEditor 是不可见的
Posted
技术标签:
【中文标题】NSPredicateEditor 是不可见的【英文标题】:NSPredicateEditor is invisible 【发布时间】:2013-04-23 12:51:09 【问题描述】:我尝试了很多方法来实现 NSPredicateEditor,但得到了空白的编辑器视图。也尝试了一个新项目,但我仍然得到编辑器的空白视图。我想知道是什么问题。这个谓词是否适用于任何特定的观点。代码是
AppDelegate.h
@interface AppDelegate : NSObject
NSPredicate *predicate;
@end
AppDelegate.m
#define DEFAULT_PREDICATE @"firstname = 'John' AND lastname = 'Doe'"
-(id)init
self = [super init];
if (self != nil)
predicate = [[NSPredicate predicateWithFormat:DEFAULT_PREDICATE] retain];
return self;
@end
【问题讨论】:
我们不是千里眼。向我们展示您的代码。 如果有一个零行代码,那么我也会得到空白窗口,它应该显示编辑器。 【参考方案1】:隐藏在 NSPredicateEditorRowTemplate 的文档中,它声明“设置谓词编辑器后,您通常会向其发送 setObjectValue: 消息以恢复已保存的谓词”
所以假设您在界面生成器中有一个模板,其键路径为“名称”,您只需要在代码中使用这样的一行来显示模板:
[predicateEditor setObjectValue:[NSPredicate predicateWithFormat:@"Name CONTAINS \"\""]];
您也可以这样做来加载行:
[predicateEditor addRow:self];
【讨论】:
以上是关于NSPredicateEditor 是不可见的的主要内容,如果未能解决你的问题,请参考以下文章