每对的第二个对象必须是非零的

时间:2011-06-14 15:01:23

标签: iphone objective-c cocoa-touch

我在app上工作,当我调试我的代码时,它显示以下错误。

-(IBAction)addSelected:(id)sender
{

    NSString* emptyStr = @"";

    NSDictionary* traits = [NSDictionary dictionaryWithObjectsAndKeys:
        self.walletName.text,       @"alias",
        self.abc.text,     @"abc",
        self.field.text,     @"field",
        @"name,"                @"Type",
        nil];-------at this point it is showing thread recieved signal sigabrt

在调试过程中,它正是这个原因。 '+ [NSDictionary dictionaryWithObjectsAndKeys:]:每对的第二个对象必须是非零的。或者,您是否忘记了终止参数列表? * 首次调用堆栈:

3 个答案:

答案 0 :(得分:6)

@"name," @"Type",应为@"name", @"Type",

,在字符串中。

答案 1 :(得分:2)

 NSDictionary* traits = [NSDictionary dictionaryWithObjectsAndKeys:
        self.walletName.text,       @"alias",
        self.abc.text,     @"abc",
        self.field.text,     @"field",
        @"name",                @"Type", nil];

问题在于形式@“name”。

答案 2 :(得分:1)

就我而言,我这样做:

NSDate *today = [NSDate date];
    NSTimeInterval currentTime = [today timeIntervalSince1970];

    NSMutableDictionary *dictExpiryDate =
    [NSMutableDictionary dictionaryWithObjectsAndKeys:currentTime, KEY_4_VALUE_OF_EXPIRY_DATE, nil];

这里的问题是currentTime,我将currentTime替换为:

[NSNumber numberWithDouble:currentTime]

这解决了我的问题。