我正在通过学习一些教程来学习Android。我目前正在研究androidhive的this教程。本教程的目标是显示电影列表并显示年份,流派,图像......所以现在我有一个问题,当服务器上没有图像时会发生什么。
movie.setThumbnailUrl(obj.getString("image"));
XML:
<com.android.volley.toolbox.NetworkImageView
android:id="@+id/thumbnail"
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_alignParentLeft="true"
android:layout_marginRight="8dp" />
如果服务器上不存在图像,我将如何显示默认图像(例如来自drawable)?
答案 0 :(得分:2)
只需在xml中为networkImageView添加默认背景:
<com.android.volley.toolbox.NetworkImageView
android:id="@+id/thumbnail"
android:background:"@drawable/default_image"
... />
并检查字符串是否为null或空
if (obj.getString("image") != null && !obj.getString("image").isEmpty()) {
movie.setThumbnailUrl(obj.getString("image"));
}
如果你想以编程方式设置它,只需使用else:
else {
movie.setDefaultImageResId(R.drawable.default);
movie.setErrorImageResId(R.drawable.error);
}
答案 1 :(得分:2)