我在列表视图项中有一个 Edittext 和一个 CheckedTextView(布局实现了 Checkable)。当我单击 EditText 时,CursorAdapter 的 bindView() 方法调用 ListView.setItemChecked()(我这样做是为了恢复在清除过滤器后可能必须恢复的 CheckMark)。但是, ListView.setItemChecked() 似乎立即从我刚刚单击的 EditText 中带走了焦点(或这里发生的其他事情?),所以现在我不能再使用 EditText 了。
我有没有办法在 bindView() 中调用 ListView.setItemChecked() 而没有这种副作用?我已经尝试在 adapter.getFilter().filter() (在 bindView() 之外)之后调用 ListView.setItemChecked() 但在这种情况下似乎新项目列表尚不可用,因为过滤是在后台完成的线。
有什么建议么?