私はlistViewを持っているし、すべての項目に私は画像がダウンロードされた後に消える必要があるprogressBarを追加しました。しかし、私はこれを行う方法を見つけることができませんでした。私はそれをgetViewクラスで消えるようにしようとしましたが、イメージをダウンロードした直後ではなくすぐに消えます。listViewすべてのアイテムにプログレスバーがありますか?
たとえば、AsyncTaskクラスのDoInBackgroundでscrollViewにいくつかのビューを追加していて、イメージをダウンロードしてからonPostExecuteを実行してイメージを設定し、progressBarを削除できました。これはうまく動作します。私はlistViewのためにこのようなことをしたい。誰か助けてくれますか?
私は明確かどうか分かりませんが、私はlist_item.xmlにimageviewとprogressbarが含まれていることを要約できます。そして、私はダウンロードしてイメージを設定した後にこれらのプログレスバーを消したいと思っています。
ありがとうございました。
ここに私のアダプタクラスです:
class myListAdapter extends ArrayAdapter<Items> {
private ArrayList<Items> items;
private Context ctx;
public myListAdapter(Context context, int textViewResourceId,
ArrayList<Items> items) {
super(context, textViewResourceId, items);
this.ctx = context;
this.items = items;
}
@Override
public int getCount() {
return items.size();
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View v = convertView;
if (v == null) {
LayoutInflater inf = (LayoutInflater) ctx
.getSystemService(LAYOUT_INFLATER_SERVICE);
v = inf.inflate(R.layout.main_list_item, null);
}
Items index = listContents.get(position);
if (index != null) {
ImageView img = (ImageView) v.findViewById(R.id.listImage);
TextView title = (TextView) v.findViewById(R.id.listTopText);
TextView content = (TextView) v.findViewById(R.id.listDownText);
if (title != null)
title.setText(index.getTitle());
if (content != null)
content.setText(index.getContent());
if (img != null)
img.setImageBitmap(index.getImageBitmap());
((ProgressBar) v.findViewById(R.id.listItemProgressBar)).setVisibility(View.GONE);
}
return v;
}
}
ので、以下この行に、私は、プログレスバーが消えていますが、画像をダウンロードして設定した後、それがなくなってしなければならない作る...しかし、リスト項目に加えますプログレスバーはありません、それは私の問題ですか?
((ProgressBar) v.findViewById(R.id.listItemProgressBar)).setVisibility(View.GONE);
あなたは私たちに好意を持って、あなたの周りにあるコードを表示して、より良くあなたを助けることができますか? – Moiz
あなたが望むコードで質問を更新しました... – yahya