ListView
Checkbox
Fragment
FragmentList
内ScrollListener
延伸@Override
public void onStart() {
super.onStart();
getListView().setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
CheckBox mCheckBox = (CheckBox) view.findViewById(R.id.chk);
if (mCheckBox.isChecked()) {
mCheckBox.setChecked(false);
getListView().setItemChecked(i, false);
} else {
mCheckBox.setChecked(true);
getListView().setItemChecked(i, true);
}
mCallback.onArticleSelected(i, isChoice);
}
});
}
。奇怪的行为是在单击一个项目时检查多个项目。
奇怪的是,当滚动列表时,会自动选择或取消选择某个项目,并且我没有设置var optionAppend = '';
$.each(data,function(i,el){
optionAppend += '<option value="'+el.Value+'">'+el.Text+'</option>';
});
$('#StartLocation').append(optionAppend);
。
以下是代码:
tem(graph(_, E)), adjacent(a, b, E).
必需: image http://windrealm.org/tutorials/android/planets-fragmentactivity.png
答案 0 :(得分:0)
ListView
的项目会回收。您应该在boolean
行对象中添加ListView
参数(isChecked),然后在getView方法中,您应该使用CheckBox
参数初始化boolean
。例如:
假设您的行对象:
public class Trial{
public String title;
public boolean isChecked;
}
在ListView
适配器的getView方法中,您应该检查对象的isChecked
参数:
@Override
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater inflater = ((Activity) context).getLayoutInflater();
View view = inflater.inflate(R.layout.your_listview_item, parent, false);
Trial item = items.get(position);
yourHolder.checkBox = (CheckBox) view.findViewById(R.id.chk);
yourHolder.checkBox.setChecked(item.isChecked);
return view;
}
祝你好运。