Android - 在ListView中OnItemClick中的setSelected

dro*_*ter 3 android listview multiple-select

我正在尝试在ListView中设置OnItemClick事件中选择的项目,它只是不会选择项目.我究竟做错了什么?

lView.setOnItemClickListener(new OnItemClickListener()
   {
    @Override
    public void onItemClick(@SuppressWarnings("rawtypes") AdapterView parent, View clickedview, int position, long id)
    {
     clickedview.setSelected(true); 
        mItemsAdapter.select(position);
    }
   }); 
Run Code Online (Sandbox Code Playgroud)

几件事情:
1.我试图在列表视图上实现Multiple Select.
2.我无法从ListActivity扩展,因为Activity已经从BaseActivity自定义类扩展.
3. mItemsAdapter是一个扩展BaseAdapter的自定义ItemsAdapter适配器.
4.我不需要一个复选框,只是为了能够看到选中的行很好.
5. ItemsAdapter重写getView()并通过膨胀xml来设置行的布局

小智 5

我可以设法在长按时将ListView的项目设置为选中:

@Override
public boolean onItemLongClick(AdapterView<?> parent, View view,
        int position, long id) {
    parent.requestFocusFromTouch(); // IMPORTANT!
    parent.setSelection(position);
    return true;
}
Run Code Online (Sandbox Code Playgroud)

它只在我打电话后才起作用requestFocusFromTouch().