我想在显示如下图所示的图像列表后,在网格的末尾创建一个带有添加按钮的网格视图。 我能够从网络中获取图像列表并添加到网格中。但是,无法在最后添加按钮。
R.drawable文件夹中提供了添加按钮的图像。感谢任何实现这一目标的建议。
这是我的适配器代码。
public class PhotosGridAdapter extends ArrayAdapter<PhotoAlbum.Edge> {
public PhotosGridAdapter(Context context, List<PhotoAlbum.Edge> photos) {
super(context, 0, photos);
}
@NonNull
@Override
public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
PhotoAlbum.Edge photoItem = getItem(position);
if(convertView == null){
convertView = LayoutInflater.from(getContext()).inflate(R.layout.grid_item_photo, parent, false);
}
ImageView ivPhoto = (ImageView) convertView.findViewById(R.id.grid_image);
Picasso.with(getContext()).load(photoItem.node.mediaItem.url).into(ivPhoto);
return convertView;
}
}
答案 0 :(得分:1)
在你的获取计数方法中,返回photos.size()+ 1;
public int getCount() {
return photos.size() + 1;
}
并在你的getView()方法中
public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
if(convertView == null){
convertView = LayoutInflater.from(getContext()).inflate(R.layout.grid_item_photo, parent, false);
}
ImageView ivPhoto = (ImageView) convertView.findViewById(R.id.grid_image);
if(position == photos.size()){
ivPhoto.setImageResource(R.drawable.ic_your_plus_icon_here);
return convertView;
}
PhotoAlbum.Edge photoItem = getItem(position);
Picasso.with(getContext()).load(photoItem.node.mediaItem.url).into(ivPhoto);
return convertView;
}
希望这有帮助.. !!!