首页 > 代码库 > Android开发点点滴滴——一些基础的但实用的知识(2)
Android开发点点滴滴——一些基础的但实用的知识(2)
1.onItemLongClick和onItemClick事件截取
当须要同一时候获得一个listview的条目长按事件(onItemLongClick)和点击事件(onItemClick)时,仅仅须要在onItemLongClick事件触发函数中,return true就可以。
2.自己定义CheckBox样式
在布局文件里,添加一个属性 android:button,话不多说,直接上代码
<CheckBox android:id="@+id/xxx" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginRight="5dp" android:button="@drawable/checkbox_selector" android:text="xxx" />checkbox_selector.xml
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android" > <item android:state_checked="true" android:drawable="@drawable/checkbox_selected_selector"/> <item android:state_checked="false" android:drawable="@drawable/checkbox_blank_selector"/> </selector>checkbox_selected_selector.xml
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android" > <item android:state_pressed="true" android:drawable="@drawable/checkbox_ya"/> <item android:state_pressed="false" android:drawable="@drawable/checkbox_yz"/> </selector>checkbox_blank_selector.xml
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android" > <item android:state_pressed="true" android:drawable="@drawable/checkbox_wa"/> <item android:state_pressed="false" android:drawable="@drawable/checkbox_wz"/> </selector>
3.ListView的Item中有button或checkBox时焦点问题
当自己定义ListView时,每一个Item上除了文字以为还有Button组件或其它也能够点击的组件时(一般就是button和checkbox),当点击这个item时可能没有反应,这是由于焦点被button组件获得了,那么点击item时,事实上是相当于点击了button组件。
解决方法:在item的根布局中增加
android:descendantFocusability="blocksDescendants"
还有方法就是在button组件中增加
android:focusable="false"
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。