为什么适配器总是改变图像位置

时间:2016-09-14 20:21:33

标签: java android

我在GridView中有6个ImageView,我需要设置从drawables数组到图像视图的图像,我在使用BaseAdapter之前,首先滚动所有优点。 这是图像视图实现,

toIndex

这里是设置图像片段的代码

     ArrayList<ImageView> images;
             images = new ArrayList<>();

             holder.ph1 = (ImageView) convertView.findViewById(R.id.ph1);
             images.add(holder.ph1);
             holder.ph2 = (ImageView) convertView.findViewById(R.id.ph2);
             images.add(holder.ph2);
             holder.ph3 = (ImageView) convertView.findViewById(R.id.ph3);
             images.add(holder.ph3);
             holder.ph4 = (ImageView) convertView.findViewById(R.id.ph4);
             images.add(holder.ph4);
             holder.ph5 = (ImageView) convertView.findViewById(R.id.ph5);
             images.add(holder.ph5);
             holder.ph6 = (ImageView) convertView.findViewById(R.id.ph6);
             images.add(holder.ph6);

所有BaseAdapter代码和图片截图,在滚动时出现故障,所有图像都会改变位置 ......

List<String> items = Arrays.asList(Helicopters.data.get(position).get("images").toString().split("\\s*,\\s*"));
         Collections.sort(items);
         for(int i = 0; i < items.size(); i++)
         {
             resID1 = MainActivity.act.getResources().getIdentifier("dop_" + (Integer.parseInt(items.get(i))), "drawable", MainActivity.act.getPackageName());
             images.get(Integer.parseInt(items.get(i))-1).setImageResource(resID1);
         }

滚动前 enter image description here

滚动后 enter image description here

1 个答案:

答案 0 :(得分:1)

请将您的职位值设为最终

 @Override
     public View getView(final int position
................
.....