让ViewGroup中的子View获得焦点
2012-02-23 14:52
239 查看
最近在做一个项目时,用到类似launcher的效果,遇到了这位朋友的问题,照他说的解决了,特转一下:
转自:/article/8088053.html
最近在用Viewgroup, 碰到这样的问题:按手机键盘的方向键无法让其子View获得焦点。Viewgroup中的子View是通过inflate动态添加,并且Viewgroup是多屏,类似桌面程序.后来参考了Launcher的代码, 查了Viewgroup重写这么几个函数就可以达到让其子View获得焦点.
1. addFocusables(ArrayList<View>views, int direction, int focusableMode)
将需要获得焦点的View添加到获得焦点视图的列表中。
2. dispatchUnhandledMove 处理方向键在没有任何View可以获得焦点情况。
3. onRequestFocusInDescendants 传递给子View应获得焦点
转自:/article/8088053.html
最近在用Viewgroup, 碰到这样的问题:按手机键盘的方向键无法让其子View获得焦点。Viewgroup中的子View是通过inflate动态添加,并且Viewgroup是多屏,类似桌面程序.后来参考了Launcher的代码, 查了Viewgroup重写这么几个函数就可以达到让其子View获得焦点.
1. addFocusables(ArrayList<View>views, int direction, int focusableMode)
将需要获得焦点的View添加到获得焦点视图的列表中。
2. dispatchUnhandledMove 处理方向键在没有任何View可以获得焦点情况。
3. onRequestFocusInDescendants 传递给子View应获得焦点
相关文章推荐
- 让ViewGroup中的子View获得焦点
- ViewGroup setVisibility 为GONE 子View依然占用地方,其中的子EditText会出现点击焦点占用
- TextView在按压和获得焦点的时候字体的颜色改变的问题解决
- setDescendantFocusability,在父View和子View间处理焦点关系
- android textview 获得焦点
- 如何获得View与ViewGroup建立View层级关系时的回调接口?
- Android自定义ViewGroup添加组合控件的子view
- android 用一半透明的view a覆盖view b 为什么view b 还能获得焦点?
- android textview 获得焦点
- 3D效果切换 ViewGroup中的子view
- ViewGroup和子View的Touch事件分析
- 带你根据源码了解View的事件触发流程,主要讲解为什么子View返回true,ViewGroup就无法接收到事件的过程
- Scroller类的使用(用来在ViewGroup里面让子view经常优美 的滑动)
- Android ViewGroup指定子View的绘制顺序
- android TextView不用获得焦点实现跑马灯效果 两种方法
- Viewgroup焦点获取优先级android:descendantFocusability用法简析
- 自定义ViewGroup和其子View
- Android自定义ViewGroup自动分配子view位置
- 给textview获得焦点时加边框背景
- 坑:删除ViewGroup中的一个已经得到焦点的EditText时,同级的第一个EditView会得到焦点