文档章节

ListView Item 无法获得焦点问题

tianlonn
 tianlonn
发布于 2015/06/14 20:09
字数 249
阅读 11
收藏 0

通常默认能获得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 

font
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>

本文转载自:http://blog.sina.com.cn/s/blog_67b1837701010qrv.html

共有 人打赏支持
tianlonn
粉丝 1
博文 8
码字总数 7961
作品 0
东城
高仿微信对话列表滑动删除效果

转载请注明出处:http://blog.csdn.net/singwhatiwanna/article/details/17515543 前言 用过微信的都知道,微信对话列表滑动删除效果是很不错的,这个效果我们也可以有。思路其实很简单,弄个...

长平狐
2013/12/25
6.6K
1
焦点问题

原来在代码中多了这个。百思不得骑姐 *之前是被代码直接覆盖住了子控件的焦点所以edittext不能拿到焦点 * android:descendantFocusability="blocksDescendants" //会覆盖子类控件而直接获得焦...

fxandroid
2016/09/03
2
0
机顶盒应用!listview每个item中添加一个倒计时!

问题描述: 遥控器按向下键,有时能按到最后一个item,有时无法按倒最后一个item 有一种情况是一定能按倒最后一个的,按住上键不放,到达顶部,再按住下键不动,到达底部 尝试解决: 代码中设...

xaozu
2015/01/06
656
1
Android ListView焦点抢占

1.开发中很常见的一个问题,项目中的listview不仅仅是简单的文字,常常需要自己定义listview,自己的adapter去继承baseadapter,在adapter中按照需求进行编写,问题就出现了,可能会发生点击...

SRain215
2016/05/16
31
0
android:descendantFocusability用法简析

开发中很常见的一个问题,项目中的listview不仅仅是简单的文字,常常需要自己定义listview,自己的Adapter去继承BaseAdapter,在adapter中按照需求进行编写,问题就出现了,可能会发生点击每...

长平狐
2013/04/25
76
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

深夜胡思乱想

魔兽世界 最近魔兽世界出了新版本, 周末两天升到了满级,比之前的版本体验好很多,做任务不用抢怪了,不用组队打怪也是共享拾取的。技能简化了很多,哪个亮按哪个。 运维 服务器 产品 之间的...

Firxiao
7分钟前
0
0
MySQL 8 在 Windows 下安装及使用

MySQL 8 带来了全新的体验,比如支持 NoSQL、JSON 等,拥有比 MySQL 5.7 两倍以上的性能提升。本文讲解如何在 Windows 下安装 MySQL 8,以及基本的 MySQL 用法。 下载 下载地址 https://dev....

waylau
40分钟前
0
0
微信第三方平台 access_token is invalid or not latest

微信第三方开发平台code换session_key说的特别容易,但是我一使用就带来无穷无尽的烦恼,搞了一整天也无济于事. 现在记录一下解决问题的过程,方便后来人参考. 我遇到的这个问题搜索了整个网络也...

自由的开源
今天
0
0
openJDK之sun.misc.Unsafe类CAS底层实现

注:这篇文章参考了https://www.cnblogs.com/snowater/p/8303698.html 1.sun.misc.Unsafe中CAS方法 在sun.misc.Unsafe中CAS方法如下: compareAndSwapObject(java.lang.Object arg0, long a......

汉斯-冯-拉特
今天
2
0
设计模式之五 责任链模式(Chain of Responsibility)

一. 场景 相信我们都有过这样的经历; 我们去职能部门办理一个事情,先去了A部门,到了地方被告知这件事情由B部门处理; 当我们到了B部门的时候,又被告知这件事情已经移交给了C部门处理; ...

JackieRiver
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部