我在我的 ListView 内的 Checkboxes 上捕获单击事件,适配器构建并构建我需要在启动 ListView 的视图中使用的一个ArrayList
HiddenChannelsListAdapter.java
这是我在 getView() 中的 customAdapter 部分
public class HiddenChannelsListAdapter extends BaseAdapter {
public ArrayList<String> slist;
CheckBox checkbox = (CheckBox) convertView.findViewById(R.id.check_channel);
checkbox.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked)
{
if ( isChecked ) {
if ( !slist.contains(i.get("id")) )
slist.add(i.get("id"));
} else {
for (int j=0;j<slist.size();j++) {
if ( slist.get(j) == i.get("id") ) {
slist.remove(j);
}
}
}
}
});
现在在我的类 ChannelsDialogPreference.java 中:
@Override
public void onClick (DialogInterface dialog, int which)
{
super.onClick(dialog, which);
if(which == -1) {
**here I need that slist ArrayList**
}
}