我有一个ListView (设置为CHOICE_MODE_SINGLE)我有一个填充我的ListView的SimpleCursorAdapter。现在我在做选择工作。
serviceListView.setAdapter(
new SimpleCursorAdapter(this, R.layout.service_listitem, cursor, new String[] { "name" }, new int[] { R.id.service_name }) {
@Override
public View getView(int position, View convertView, ViewGroup parent) {
final View renderer = super.getView(position, convertView, parent);
if (position == newSelectedPosition) {
renderer.setBackgroundResource(R.layout.list_view_layer_list);
} else {
renderer.setBackgroundResource(android.R.color.transparent);
}
return renderer;
}
}
);因此,当我选择一行时,我希望应用我的布局。这可以很好地工作。但在某些情况下,当我按下一行2-3秒,然后拖动一点并释放该行时,我会选择2行。我尝试了几种方法来获得初始选择,覆盖OnTouchListener、OnScrollListener、OnLongClickListener。无结果。欢迎任何帮助,谢谢
发布于 2011-10-29 07:18:15
我退出了这个实现。我将尝试通过对每一行使用ScrollView和TextView-s来“模拟”ListView
发布于 2011-10-27 22:48:34
更改选择后,您是否尝试过在适配器上调用notifyDataSetChanged()?这应该会导致所有行再次反弹,并且所有视图(除了选定的视图)都恢复为透明背景。
https://stackoverflow.com/questions/7917113
复制相似问题