ListView Item 无法获得焦点问题
2016-08-03 00:00
281 查看
摘要: 张亚龙,于2012-10-29在OSchina发表,现在换账号,重新发表
通常默认能获得focus的控件有Button,Checkable继承来的所有控件,这就意味着如果你的自定义ListViewItem中 有Button或者Checkable的子类控件的话,那么默认focus是交给了子控件,而ListView的Item能被选中的基础是它能获取 Focus,所以item中的子控件的focus必须为false,这样item才能获取onItemClick事件,(RatingBar中有个 isIndicator属性表示RatingBar是否是指示用的,应该设为true,不然也获取不到焦点)
1. 将ListView的Item Layout的子控件focusable属性设置为false
2. 对Item Layout的根控件android:descendantFocusability="blocksDescendant"
例如:
通常默认能获得focus的控件有Button,Checkable继承来的所有控件,这就意味着如果你的自定义ListViewItem中 有Button或者Checkable的子类控件的话,那么默认focus是交给了子控件,而ListView的Item能被选中的基础是它能获取 Focus,所以item中的子控件的focus必须为false,这样item才能获取onItemClick事件,(RatingBar中有个 isIndicator属性表示RatingBar是否是指示用的,应该设为true,不然也获取不到焦点)
1. 将ListView的Item Layout的子控件focusable属性设置为false
2. 对Item Layout的根控件android:descendantFocusability="blocksDescendant"
例如:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="wrap_content" android:padding="8dip" android:background="#ffffffff" android:descendantFocusability="blocksDescendant > <LinearLayout <RatingBar android:id="@+id/rb_bookRating" android:layout_width="wrap_content" android:layout_height="wrap_content" android:rating="2.0" style="@style/RatingBar" android:isIndicator="true" /> </LinearLayout> <Button android:id="@+id/btn_schedule" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:layout_centerVertical="true" android:focusable="false" android:text="查看" style="@style/Button" /> </RelativeLayout>
相关文章推荐
- ListView Item 无法获得焦点问题
- ListView Item 无法获得焦点问题
- [Android开发] 解决listview 的item无法获得焦点
- ListView的item中含edittext时无法获取焦点的问题
- 安卓listview嵌套gridview时,造成listview的item无法获取焦点的问题
- Android--焦点问题-ListView中item及其子控件无法响应点击事件
- 关于listview中item无法获去焦点的问题
- 如何禁止listview的item项获得焦点,而让item的子控件获得焦点
- ListView的item中有Button或CheckBox焦点冲突的问题
- Android ListView Item与子控件焦点问题
- 关于datagridview单元格不切换焦点无法获得新输入数据的问题解决方法
- android关于Listview中定义了子控件,子控件和item同时获取焦点的问题
- android ListView的item与其子控件的焦点问题
- 问题小结(1)-listview指定item获取焦点
- Android中ListView的条目中有button时,item和button抢焦点问题
- Android ListView的Item中的按钮Button和ImageButton共存、抢夺焦点问题
- Android开发中listView的item无法获取焦点
- 如何禁止listview的item项获得焦点,而让item的子控件获得焦点
- ListView item项中包含某些可以抢焦点的控件导致无法获取焦点问题的解决方案
- IE6-IE9兼容性问题列表及解决办法_补充之五:在IE9下, disabled的文本框内容被选中后,其他控件无法获得焦点问题