本文共 1418 字,大约阅读时间需要 4 分钟。
Android GridView扩扩展展仿仿微微信信微微博博发发图图动动态态添添加加删删除除图图片片功功能能
这篇文章主要为大家详细介绍了Android GridView扩展仿微信微博发图动态添加删除图片功能,具有一定的参考价
值,感兴趣的 伙伴们可以参考一下
在平时的开发中,我们会看到不管是微信发朋友圈照片还是微博发布新鲜事,添加图片的时候都是选完后面还有个+
号再去选择图片,这样的话比较方便用户去添加图片,有的右上角还有个-号方便用户去删除图片,而一般用户选择
的图片多少都是不定的,我们只限制最大张数,我们用gridview去实现,代码可能比较简单,高手请略过。
0.效效果果图
1.准准备资源源图片片
添加图片的+号图片
删除图片的图片
2.可可设置置限限制制用用户选择最最大大张数数
/**
* 可以动态设置最多上传几张,之后就不显示+号了,用户也无法上传了
* 默认9张
*/
private int maxImages = 9;
/**
* 获取最大上传张数
*
* @return
*/
public int getMaxImages() {
return maxImages;
}
/**
* 设置最大上传张数
*
* @param maxImages
*/
public voi setMaxImages(int maxImages) {
this.maxImages = maxImages;
}
3. 置GridView的总数
/**
* 让Gri View中的数据数目加1最后一个显示+号
* 当到达最大张数时不再显示+号
* @return 返回Gri View中的数量
*/
@Overri e
public int getCount() {
int count = atas == null ? 1 : atas.size() + 1;
if (count >= maxImages) {
return atas.size();
} else {
return count;
}
}
4.getView()中根据position判断+号的显示
@Overri e
public View getView(final int position, View convertView, ViewGroup parent) {
ViewHol er viewHol er = null;
if (convertView == null) {
convertView = inflater.inflate(R.layout.item_publishe _gri a, parent, false);
viewHol er = new ViewHol er(convertView);
convertView.setTag(viewHol er);
} else {
viewHol er = (ViewHol er) convertView.getTag();
}
/**代表+号之前的需要正常显示图片**/
if ( atas != null && position < atas.size()) {
final File file = new File( atas.get(position).get("path").toString());
Gli e.with(context)
.loa (file)
转载地址:https://blog.csdn.net/weixin_34017915/article/details/117285436 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!