Android 在“多选”列表视图中选择一个项目将选择多个项目

Android 在“多选”列表视图中选择一个项目将选择多个项目,android,android-contacts,listactivity,Android,Android Contacts,Listactivity,我正在尝试创建一个具有多个选择的联系人选择器。我可以加载所有联系人旁边的复选框。但是,当我选择一个项目时,我的列表中会自动选择每8个项目。此外,当我上下滚动时,所有选择都会自动更改 有人知道这是怎么回事吗?这是我的联系人选取类 public class HomeActivity extends ListActivity { public void onCreate(Bundle paramBundle) { super.onCreate(paramBundle);

我正在尝试创建一个具有多个选择的联系人选择器。我可以加载所有联系人旁边的复选框。但是,当我选择一个项目时,我的列表中会自动选择每8个项目。此外,当我上下滚动时,所有选择都会自动更改

有人知道这是怎么回事吗?这是我的联系人选取类

public class HomeActivity extends ListActivity {

    public void onCreate(Bundle paramBundle) {
        super.onCreate(paramBundle);

        Cursor cursor = getContentResolver().query(ContactsContract.Contacts.CONTENT_URI,null, null, null, null); 
        SimpleCursorAdapter adapter = new SimpleCursorAdapter(this, 
                android.R.layout.simple_list_item_multiple_choice, 
                cursor, 
                new String[] {ContactsContract.Contacts.DISPLAY_NAME}, 
                new int[] { android.R.id.text1},0);

        setListAdapter(adapter);    
    }

    @Override
    protected void onListItemClick(ListView l, View v, int position, long id) {        
        CheckedTextView textView = (CheckedTextView)v;
        textView.setChecked(!textView.isChecked());
    }   
}

发生这种情况的原因是
列表视图中的视图循环机制。尝试在您的
onCreate()
中添加以下内容

getListView().setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);