最近做项目遇到一个问题,当position==0的时候加载两次,导致一个数据显示在一起,问题一般出现 是反射的布局动态add新的textview或者imageview时,才出现,如果是setText或者setImage不会出现这个问题 ,因为set是将上次的东西覆盖了,而add 不是,所以导致数据显示两遍
解决方法如下:
boolean flag = false;//position=0 一直运行两次
@Overridepublic View getView(int position, View convertView, ViewGroup parent) {
if (convertView == null) {
convertView = LayoutInflater.from(context).inflate(
R.layout.griditem, null);
}
if(position==0&&!flag){
flag=true;
}else{
flag = false;
}
if(flag){
return convertView;
}
TextView textView = (TextView) convertView.findViewById(R.id.tvtext);
LinearLayout linearLayout = (LinearLayout) convertView
.findViewById(R.id.imagelay);
}
本文介绍了解决Android Adapter中position为0时数据重复加载的问题。通过设置一个标记变量来控制是否加载数据,避免了因动态添加视图组件而导致的数据重复显示。此方法适用于TextView和ImageView等控件。
904

被折叠的 条评论
为什么被折叠?



