在NetworkImageView Volley Android中加载不同的离线图片(默认图片)

3

我的现状

我有一个GridLayoutManager Recyclerview,其中位置0、2、5、7固定,使用自定义图像(相对布局转换为位图;)),其余位置使用volley的setImageUrl()从服务器填充图像。

我的需求

我希望GridLayoutManager Recyclerview在从服务器加载图像之前,使用setDefaultImageResId()显示来自我的drawable文件夹的离线图像。

我的问题

当没有来自服务器的图像时原因(当没有数据从服务器中获取时,GridLayoutManager Recyclerview不会填充单元格),如何设置不同的默认图像,但仍要显示默认图像(需要最小4个单元格)?

我临时采用的方法

我在虚拟服务器上上传了我的4个默认图像以强制GridLayoutManager Recyclerview生成单元格并使用volley的setImageUrl()进行显示。

我的期望结果

enter image description here

2个回答

0

我认为Volley有显示默认图片和错误发生时的图片选项。

NetworkImageView niv = (NetworkImageView)findViewById(R.id.niv);
if(url.length() > 0) 
    niv.setImageUrl(url, imageLoader);
niv.setDefaultImageResId(R.drawable._default);
niv.setErrorImageResId(R.drawable.error);

我知道这一点,但当我从服务器获取数据时,默认图像就会生效。如果我没有数据,我仍然想显示默认图像怎么办? - karthik kolanji
根据文档中的setDefaultImageResId“设置默认图像资源ID以在加载完成之前用于此视图”,我认为如果您无法从服务器获取图像,则会显示默认图像,对吗? - Spirrow
我无法从服务器获取图像,我的Recyclerview甚至没有填充单元格,那么我该如何显示默认图像? - karthik kolanji

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接