gpt4 book ai didi

ios - 检查 Objective C 中的空 JSON key

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:28:23 24 4
gpt4 key购买 nike

我正在开发一个应用程序,它返回用户在 tableView 中搜索的一些 JSON 数据。有时会返回一个空键,如果选择一个选项,它似乎会使我的应用程序崩溃。我查找了其他解决方案,但无论我如何设置“if”检查,它仍然会崩溃。

第一个很奇怪,它可以工作,但在显示数据的 TextView 中显示“{}”而不是“不可用...”,为什么?

if ([gameDetails objectForKey:@"description"] !=nil) {
gameDescription.text = [NSString stringWithFormat:@"%@", [gameDetails objectForKey:@"description"]];
}
else
{
gameDescription.text = [NSString stringWithFormat:@"Not Available..."];
}

无论我如何设置,下一个都会崩溃。

if ([gameDetails objectForKey:@"box_front"] != nil) {
NSURL *coverImage = [NSURL URLWithString:[gameDetails objectForKey:@"box_front"]];
NSData *imageLink = [NSData dataWithContentsOfURL:coverImage];
coverArt.image = [UIImage imageWithData:imageLink];
}
else
{
NSLog(@"No Photo");
}

有人能告诉我为什么这些会导致我的应用程序不断崩溃吗?如果我需要更多信息,请告诉我。

最佳答案

NSURL *coverImage = [NSURL URLWithString:[gameDetails objectForKey:@"box_front"]];

//你必须检查 coverImage 不为 nil 然后你只需要做以下操作。否则写一些关于 nil 的信息。

NSData *imageLink = [NSData dataWithContentsOfURL:coverImage];
coverArt.image = [UIImage imageWithData:imageLink];

//要检查 nil 或 null,您可以使用以下代码。

if([[itemDataDict valueForKey:@"ItemNo"] isKindOfClass:[NSString class]])
{
if([[itemDataDict valueForKey:@"ItemNo"] isEqualToString:@""] || [[itemDataDict valueForKey:@"ItemNo"] isEqualToString:@"<null>"])
{
txtItemNo.text = @"";
}
else
{
txtItemNo.text = [NSString stringWithFormat:@"%@",[itemDataDict valueForKey:@"ItemNo"]];
}
}
else
{
txtItemNo.text = @"";
}

如果您需要更多信息,请告诉我。

关于ios - 检查 Objective C 中的空 JSON key ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22651796/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com