Android中焦点移到ListView的有关问题
2014-09-19 14:26
369 查看
一个解决办法
这不是一个根本解决的方法:写一个新的class,继承ListView,覆盖onFocusChanged。@Override protected void onFocusChanged(boolean gainFocus, int direction, Rect previouslyFocusedRect) { super.onFocusChanged(gainFocus, direction, previouslyFocusedRect); if (gainFocus && previouslyFocusedRect != null) { final ListAdapter adapter = getAdapter(); final int count = adapter.getCount(); switch (direction) { case FOCUS_DOWN: for (int i = 0; i < count; i++) { if (!adapter.isEnabled(i)) { continue; } setSelection(i); break; } break; case FOCUS_UP: for (int i = count-1; i>=0; i--) { if (!adapter.isEnabled(i)) { continue; } setSelection(i); break; } break; default: break; } } }
在这里,我只处理了FOCUS_DOWN和FOCUS_UP。由于不能访问mFirstPosition,处理也做了简化:焦点从上方移下来时选择第一个能选择的,从下方移上来时选择最后一个能选择的。
相关文章推荐
- android:listView Button 焦点问题
- 【Android】ListView中EditText焦点问题
- Android ListView焦点事件冲突问题与解决
- Android BaseAdapter和ViewHolder 优化 解决ListView的item抢焦点问题和item错乱问题
- 使用Android Supportv4 SwipeRefreshLayout有关ListView滑动冲突问题
- android ListView 焦点问题
- 通过android:descendantFocusability解决listview每一项或项中view无法获取焦点的问题
- 【Android】ListView中EditText焦点问题
- Android中ListView的条目中有button时,item和button抢焦点问题
- Android开发之ListView+EditText-要命的焦点问题终极解决方案
- 【Android】ListView中EditText焦点问题
- Android开发之ListView+EditText-要命的焦点和软键盘问题解决办法
- Android中ListView的addFooterView不显示的有关问题和adapter
- Android之ListView的item获取不到焦点问题
- Android开发之ListView+EditText-要命的焦点和软键盘问题解决办法
- 【Android】ListView中EditText焦点问题
- android:descendantFocusability用法简析【listview gridview 焦点问题】
- android开发中ListView中添加ImageButton控件时,ListView失去焦点问题
- Android疑惑篇------------含有button按钮的ListView中,列表项无法获取焦点的问题
- android--listview焦点问题