Adam Jenkins
Adam Jenkins

Reputation: 55643

cast message argument objective c

I've got an NSMutableDictionary (p) - via a JSON string - that has a bunch of dates in it (seconds since the epoch). I want to convert them to NSDate. I tried the following:

NSDate *created_dt = [NSDate dateWithTimeIntervalSince1970:[p objectForKey:@"created_dt"]];

But I get "sending 'id' to parameter of incompatible type 'NSTimeInveral' (aka 'double')"

What's the syntax that I am missing?

Thanks!

Upvotes: 1

Views: 73

Answers (1)

Scott Berrevoets
Scott Berrevoets

Reputation: 16946

dateWithTimeIntervalSince1970: expects an NSTimeInterval (which typedefed to a double). You pass it an object (the return value of objectForKey). This object is probably an NSNumber, so you can simply solve your problem like this:

NSDate *created_dt = [NSDate dateWithTimeIntervalSince1970:[[p objectForKey:@"created_dt"] doubleValue]];

Upvotes: 2

Related Questions