克服位置的變化在列表視圖在基礎適配器有包含勾選框maultiple意見,如何在Android的
如果我選擇複選框,一個位置不饒人,如果我滾動並取消同一複選框,某些其它位置越來越,但我需要相同的位置..如何得到這個?
克服位置的變化在列表視圖在基礎適配器有包含勾選框maultiple意見,如何在Android的
如果我選擇複選框,一個位置不饒人,如果我滾動並取消同一複選框,某些其它位置越來越,但我需要相同的位置..如何得到這個?
這是因爲您的適配器正在回收視圖,並且您沒有正確處理它。請確保您使用的setChoiceMode(ListView.CHOICE_MODE_MULTIPLE)
或setChoiceMode(ListView.CHOICE_MODE_SINGLE)
如果您正在使用自定義列表項,請參考我的教程:CUSTOM LISTVIEW WITH ABILITY TO CHECK ITEMS
在您的適配器類
public View getView(final int position, final View convertView, ViewGroup parent) {
View row = super.getView(position, convertView, parent);
if (row == null)
{
LayoutInflater inflater = (LayoutInflater) activity
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
row = inflater.inflate(R.layout.reports_list, null);
}
CheckBox cBox=(CheckBox)row.findViewById(R.id.cb1);
cBox.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
if(cBox.isChecked())
{
System.out.println("position "+reportslistview.getPositionForView(cBox));
}
}
});
它很難說沒有看到任何代碼。 。這可能是getView方法的一個問題 – Tobrun
Reffer API演示(視圖/列表/多選列表).Best示例。 –