1

リストビューにボタンとプログレスバー(非表示)があります。ボタンをクリックすると消えてプログレスバーが表示され、実行が開始され(Webサーバーからのダウンロード)、実行が完了するとボタンが再び表示されます。最初の項目のボタンをクリックすると進行状況バーが実行されますが、最初の項目が画面から消えるまで下にスクロールすると、リストビューの最後の項目の最初の項目の進行状況バーと同時に進行状況バーが表示されます。上にスクロールすると、最初のアイテムのプログレスバーが正常に実行されます。リストビューの2番目の最後の項目をクリックすると、同じことが起こります。何が問題で、どうすれば解決できますか? 助けてください!!!

4

4 に答える 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 に答える