Tôi đã tìm kiếm cách kiểm tra xem khóa NSDictionary có tồn tại hay không và đã đưa ra giải pháp. Nhưng nó vẫn ném cho tôi một lỗi nói rằng thêm giá trị null vào khóa. Tôi không chắc liệu mã của tôi có đúng hay không. Nếu bất cứ ai có bất kỳ ý tưởng về điều này có thể giúp tôi.Kiểm tra xem khóa có tồn tại trong NSDictionary là null hay không
NSDictionary *result;
id myImageURL = [result objectForKey:@"url"];
if ((NSNull *)myImageURL == [NSNull null])
myImageURL = @"";
id myImage = [result objectForKey:@"image"];
if ((NSNull *)myImage == [NSNull null])
myImage = @"";
Kiểm tra xem null có thêm gì và nếu không thêm giá trị. Nhưng nó vẫn cho tôi một lỗi không biết tại sao.
/****OUTPUT*****/
2011-08-11 14:56:06.668 Tab_Table_Win[6510:207] RESULTS : {
image = "<UIImage: 0xbc332c0>";
url = "http://a3.twimg.com/profile_images/999228511/normal.jpg";
}
2011-08-11 14:56:06.669 Tab_Table_Win[6510:207] url : http://a3.twimg.com/profile_images/999228511/normal.jpg
2011-08-11 14:56:06.670 Tab_Table_Win[6510:207] IMage : <UIImage: 0xbc332c0>
/*****Breaks Here ***/
2011-08-11 14:56:06.876 Tab_Table_Win[6510:207] RESULTS : {
}
2011-08-11 14:56:06.878 Tab_Table_Win[6510:207] url : (null)
2011-08-11 14:56:06.879 Tab_Table_Win[6510:207] IMage : (null)
2011-08-11 14:56:06.881 Tab_Table_Win[6510:207] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFDictionary setObject:forKey:]: attempt to insert nil key'
Lỗi chính xác mà nó cung cấp là gì và dòng mã nào? – Chuck
Tôi đã chỉnh sửa mã của mình ở trên. – lifemoveson
kiểm tra câu trả lời của tôi.bằng cách gửi nó vào một id sau đó đúc nó, bạn đang lãng phí bộ nhớ, mặc dù rất thấp. Bạn có thể làm điều đó một dòng. Tôi ước iOS có một thuộc tính keysExist như .net. –