2

実際、私は次の方法を試しました。

checkbox_visable=true;
fileList.notifyDataSetChanged();
listview.invalidate();

getview()しかし、各行に対して指定したアダプターのメソッドを思い出せません。

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    // TODO Auto-generated method stub
    convertView=super.getView(position, convertView, parent);
    CheckBox cb=(CheckBox) convertView.findViewById(R.id.item_cb);
    if(checkbox_visable)
    cb.setVisibility(View.INVISIBLE);
    return convertView;
}

だから、私が動的にUIを変更するためのアイデアはありListViewますか?

4

2 に答える 2

1

リストビューを下にスクロールすると、getview が自動的に呼び出されます。

ビューは自動的に更新されます

条件がfalseの場合にチェックボックスの状態を設定するelse条件をコードに入れます

if(checkbox_visable)
            cb.setVisibility(View.INVISIBLE);
else
//what you want the state of the checkbox to be

これはうまくいくと思います。

于 2012-08-10T05:51:15.303 に答える
0

わかりました、これを試してください

listview.setAdapter(new FileList(this, R.layout.row, your data));

And in your FileList class make the construstor of your adapter like.  

public FileList(Context context, int textViewResourceId,   String[] objects) {
            super(context, textViewResourceId, objects);
        }

これが役立つことを願っています

于 2012-08-10T04:01:54.857 に答える