我正在尝试从Parse.com检索图像。在DataBrowser中,如果图像文件为空,则代码崩溃。所以我通过检查file!= null处理此错误。

它在ParseFile file = (ParseFile) ob.get("image");这行说JSONObject cannot be cast to ParseFile时崩溃了。

那么,如果解析文件为空,该如何处理?

for (ParseObject ob : result) {
String perf = ob.getString("info");
ParseFile file = (ParseFile) ob.get("image");
if (file != null) {
    image_url = file.getUrl();
    } else {
         /*load some default image url*/
        image_url = "www.abc.com/image.png";
    }
    Picasso.with(getActivity()).load(image_url).into(imageView);
    textView.setText(perf);
    layoutCards.setVisibility(View.VISIBLE);
}

最佳答案

尝试:

(确保在解析数据浏览器中存在一个名为“ image”的字段,用于存储解析文件)

ParseFile parseFile = ob.getParseFile("image");


然后检查:

if (parseFile != null && parseFile.getUrl() != null && parseFile.getUrl().length() > 0) {
            ...
}

10-07 16:22