文档章节

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

没有更多内容

加载失败,请刷新页面

加载更多

打包QML程序

1、windeployqt执行路径(D:\Qt\5.12.0\msvc2017_64\bin)加入到PATH中 2、使用Qt自带的命令行交互 Command 终端(Qt 5.12.0 64-bit for Desktop (MSVC 2017))切换到 Release 编译成功的exe...

渣渣曦
37分钟前
3
0
优秀互联网高级测试工程师应该具备的能力

概述 在之前写的互联网高级测试工程师至少具备的能力一文中,提到了测试工程师至少具备的能力,但是并没有提到优秀测试工程师应该具备的能力,下文简单的谈一谈。当然这些全部都是我的个人理...

Sam哥哥聊技术
40分钟前
3
0
webpack项目配置

前端工程化 前端工程化是根据业务特点,将前端开发流程规范化,标准化,它包括了开发流程、技术选型、代码规范、构建发布等等,用语提升前端工程师的开发效率和代码质量。 自动化构建工具 1、...

羊皮卷
43分钟前
1
0
Linux命令备忘录: jobs 显示Linux中的任务列表及任务状态命令

jobs命令用于显示Linux中的任务列表及任务状态,包括后台运行的任务。该命令可以显示任务号及其对应的进程号。其中,任务号是以普通用户的角度进行的,而进程号则是从系统管理员的角度来看的...

开元中国2015
今天
3
0
springboot Whitelabel Error Page(Not Found)解决方案

当出现上图图的错误时注意 报错信息 There was an unexpected error (type=Not Found, status=404). Not Found代表未访问到资源 解决方案:比较访问路径和代码的路径有没有写错 正确的访问路...

斩神魂
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部