リストビューにボタンとプログレスバー(非表示)があります。ボタンをクリックすると消えてプログレスバーが表示され、実行が開始され(Webサーバーからのダウンロード)、実行が完了するとボタンが再び表示されます。最初の項目のボタンをクリックすると進行状況バーが実行されますが、最初の項目が画面から消えるまで下にスクロールすると、リストビューの最後の項目の最初の項目の進行状況バーと同時に進行状況バーが表示されます。上にスクロールすると、最初のアイテムのプログレスバーが正常に実行されます。リストビューの2番目の最後の項目をクリックすると、同じことが起こります。何が問題で、どうすれば解決できますか? 助けてください!!!
質問する
1109 次
4 に答える
0
getView をこれに置き換えるだけです。これにより、if(view==null) を削除します。これにより、タグ以外の新しいビューが毎回取得されます
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
final ArrayList<String> array=JournalArray.get(position);
final ViewHolder view;
LayoutInflater inflator = activity.getLayoutInflater();
view = new ViewHolder();
convertView = inflator.inflate(R.layout.familylist_item, null);
view.progress=(ProgressBar)convertView.findViewById(R.id.downprogress);
view.txtViewTitle = (TextView) convertView.findViewById(R.id.text);
view.imgViewFlag = (ImageView) convertView.findViewById(R.id.imageView1);
view.imgAR=(Button)convertView.findViewById(R.id.imageAR);
view.imgAR.setTag(view);
view.imgDown=(Button)convertView.findViewById(R.id.imageDown);
view.imgDown.setTag(view);
view.imgPDF=(Button)convertView.findViewById(R.id.imagePDF);
view.imgPDF.setTag(view);
view.progress=(ProgressBar)convertView.findViewById(R.id.downprogress);
view.btnDel=(Button)convertView.findViewById(R.id.btnDel);
view.btnDel.setTag(view);
convertView.setTag(view);
}
于 2013-05-13T05:40:52.410 に答える