2012-01-01 202 views
-2

我使用了NSPredictate類,但發生了以下錯誤。 我不知道原因。使用NSPredictate導致錯誤的原因是什麼?

爲什麼會出現下面的錯誤?

enter image description here

遵循的是源代碼。

#import "Predictate.h" 

@implementation Predictate 

@synthesize dictate; 

-(id)init{ 
    if ((self = [super init])) { 
    } 
    return self; 
} 

- (void)Predictate{ 
    dictate = [[NSMutableArray alloc]initWithObjects:@"AAA",@"BBB",@"CCC", nil]; 
    NSPredicate *test = [NSPredicate predicateWithFormat:@"dictate like 'AAA'"]; 

    NSMutableArray *result = [dictate filteredArrayUsingPredicate:test]; 

    NSLog(@"%@",result); 
} 

-(void)dealloc{ 
    [dictate release]; 
    [super dealloc]; 
} 

@end 

錯誤消息如下。

2012-01-02 00:57:39.972濾波器[1750:707] ***終止應用程序由於未捕獲的異常 'NSUnknownKeyException',原因:「[< __NSCFConstantString 0x100002290> valueForUndefinedKey:]:這個類不是關鍵符合關鍵指令的值編碼。「

+0

使你的代碼(正誤差)的屏幕截圖,並張貼在這裏它是不是真的,我們喜歡的格式。考慮將代碼和錯誤複製/粘貼到StackOverflow。 – 2012-01-01 16:07:27

+0

請將屏幕截圖替換爲可複製粘貼到XCode中的實際代碼並在本地嘗試。 – dasblinkenlight 2012-01-01 16:07:30

+0

什麼是錯誤?幾年前我失去了閱讀技能。 – alexy13 2012-01-01 16:07:58

回答

3

您正在使用NSPredicate來篩選字符串對象的數組,但使用的是dictate like 'AAA'。謂詞將完全不知道這個dictate是什麼意思。

你會想SELF更換dictate,使之成爲"SELF like 'AAA'"

+0

你打敗了我(你打敗了我的西班牙人,這意味着你一定學過) – 2012-01-01 16:11:55

相關問題