【问题标题】:NSPredicateEditor is invisibleNSPredicateEditor 是不可见的
【发布时间】: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

【问题讨论】:

  • 我们不是千里眼。向我们展示您的代码。
  • 如果有一个零行代码,那么我也会得到空白窗口,它应该显示编辑器。

标签: objective-c macos nspredicate nspredicateeditor


【解决方案1】:

隐藏在 NSPredicateEditorRowTemplate 的文档中,它声明“设置谓词编辑器后,您通常会向其发送 setObjectValue: 消息以恢复已保存的谓词”

所以假设您在界面生成器中有一个模板,其键路径为“名称”,您只需要在代码中使用这样的一行来显示模板:

[predicateEditor setObjectValue:[NSPredicate predicateWithFormat:@"Name CONTAINS \"\""]];

您也可以这样做来加载行:

[predicateEditor addRow:self];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-01-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-04
    相关资源
    最近更新 更多