我正在使用看起来像Shelf的自定义char
。我显示3列
当服务器中有5个项目时,Gridview
的第6个位置为空
我想在其中显示机架线图像
Grid_item.xml
Gridview
im_ninja_delights_rack.png
答案 0 :(得分:1)
使用piccaso库为imageView设置占位符
像这样Picasso.with(this)
.load("IMAGE URL")
.placeholder(R.drawable.default_image) // optional
.error(R.drawable.error_image) // optional
.into(imageView);
答案 1 :(得分:1)
我正在使用相同的条件
1
public int getCount()
{
return mItems.size()+1;
}
2
public View getView(int position, View convertView, ViewGroup parent)
{
LayoutInflater inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View gridView = inflater.inflate(R.layout.test_grid_layout, null);
ImageView imageView = (ImageView) gridView.findViewById(R.id.grid_item_image);
if(position == mItems.size())
{
imageView.setImageResource(R.drawable.blank_img);
}
else
{
imageView.setImageURI(Uri.parse(mItems.get(position)));
}
return gridView;
}
最后一张是空白图片
答案 2 :(得分:0)
如果您尝试每行显示3张图像,请确保图像列表是3的倍数。
然后,将默认图像设置为您在膨胀的xml中使用的图像视图。
做类似的事情,
在您的活动中,将适配器构造函数称为
gridView.setAdapter(new BaseAdapterClass(context, actual_data_list, actual_data_list.size() + number_to_make_size_multiple_of_3));
然后,在Adapter类中,
public int getCount(){
return multiple_of_3_passed_from_activity;
}
public View getView(int position, View convertView, ViewGroup parent) {
if(position < actual_data_list.size()) {
// Set your image to imageview
}
return convertView;
}
答案 3 :(得分:-1)