安卓开发中遇到的一些小问题
2016-02-18 11:39
204 查看
ListView隐藏右侧滑动栏,在xml不居中设置android:scrollbars="none"
ListView的Item中包含Button或ImageButton时,会优先获取焦点,导致点击Item无效,需设置android:descendantFocusability="blocksDescendants"使Item优先获得焦点
Android Studio中,隐式意图启动拨打电话,startActivity(intent)报错,添加try{}catch(Exception e){},解决
在处理长按时,注意的细节是把onItemLongClick返回设置为true,否则长按是会执行setOnItemClickListener。
ListView中,关于id,如果position指向了headerView或footerView,那么返回-1,否则,将返回在用户view数组的位置。也就是说id=position-headerView的个数,如果是footerView则id=-1;id从0开始。
全选Item时,在适配器Adapter中创建一个集合用来存储所选中的Item下标,创建四个方法(1、判断是否存在,2、添加下标,3、删除下标,4、清空下标),在onItemClickListener方法中调用这些方法来选中或清除对应Item。(全选则是遍历数据集合,调用Adapter添加方法添加)
ListView点击Item时,点击时颜色变化,可以再ListView中设置listSelector属性,调用select,用来实现
EditText点击后弹出输入框,要想点击其他地方时输入框消失,可以把EditText所在的父布局设置android:clickable="true",android:focusable="true",android:focusableInTouchMode="true"这三个属性,同时EditText设置setOnFocusChangeListener监听事件,监听焦点是否存在来判断是否清除软键盘
布局文件中switch控件,要注意textOn、textOff这两个属性会默认有文字,更换样式背景thumb滑块、track轨道,thumbTextPadding属性可以设置滑块宽度,switchMinWidth属性可以设置轨道宽度(宽度设置需要thumbTextPadding、switchMinWidth搭配使用)
设置TextView文字不同颜色,首先SpannableString ss = new SpannableString("文字内容"),然后调用ss.setSpan(new ForegroundColorSpan(color), 初始下标, 结束下标, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);,最后TextView.setText(ss)。
popupWindow.showAsDropDown(parent, x, y);此方法以parent左下角为原点显示,只有在parent的宽度比popupWindow的宽度大时x偏移才有效,x为正向右偏移,为负向左偏移,y为正向上偏移,为负向下偏移
ListView的Item中包含Button或ImageButton时,会优先获取焦点,导致点击Item无效,需设置android:descendantFocusability="blocksDescendants"使Item优先获得焦点
Android Studio中,隐式意图启动拨打电话,startActivity(intent)报错,添加try{}catch(Exception e){},解决
在处理长按时,注意的细节是把onItemLongClick返回设置为true,否则长按是会执行setOnItemClickListener。
ListView中,关于id,如果position指向了headerView或footerView,那么返回-1,否则,将返回在用户view数组的位置。也就是说id=position-headerView的个数,如果是footerView则id=-1;id从0开始。
全选Item时,在适配器Adapter中创建一个集合用来存储所选中的Item下标,创建四个方法(1、判断是否存在,2、添加下标,3、删除下标,4、清空下标),在onItemClickListener方法中调用这些方法来选中或清除对应Item。(全选则是遍历数据集合,调用Adapter添加方法添加)
ListView点击Item时,点击时颜色变化,可以再ListView中设置listSelector属性,调用select,用来实现
EditText点击后弹出输入框,要想点击其他地方时输入框消失,可以把EditText所在的父布局设置android:clickable="true",android:focusable="true",android:focusableInTouchMode="true"这三个属性,同时EditText设置setOnFocusChangeListener监听事件,监听焦点是否存在来判断是否清除软键盘
布局文件中switch控件,要注意textOn、textOff这两个属性会默认有文字,更换样式背景thumb滑块、track轨道,thumbTextPadding属性可以设置滑块宽度,switchMinWidth属性可以设置轨道宽度(宽度设置需要thumbTextPadding、switchMinWidth搭配使用)
设置TextView文字不同颜色,首先SpannableString ss = new SpannableString("文字内容"),然后调用ss.setSpan(new ForegroundColorSpan(color), 初始下标, 结束下标, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);,最后TextView.setText(ss)。
popupWindow.showAsDropDown(parent, x, y);此方法以parent左下角为原点显示,只有在parent的宽度比popupWindow的宽度大时x偏移才有效,x为正向右偏移,为负向左偏移,y为正向上偏移,为负向下偏移
相关文章推荐
- 使用 .gitignore来忽略某些文件【转】
- 表的外键处理,来操作表的字段:
- ORM原型概念
- 使用Spring MVC HandlerExceptionResolver处理异常
- Android中应用程序如何获得系统签名权限
- Java线程等待wait通知notify方法的使用
- 对Java Serializable(序列化)的理解
- AJAX POST&跨域 解决方案 - CORS
- 工厂模式
- intptr_t 类型
- 日志/数据自动压缩备份删除小脚本
- iOS 页面间几种传值方式(属性,代理,block,单例,通知)
- 安装lsb_release
- 如何有效进行性能测试——准备篇
- Python正则表达式
- 使用jmeter的java执行oracle查询
- 通达OA批量处理没有结束但前台显示已经结束的流程
- MQTT协议详解,非常易懂
- 关于代码动态设置view
- swift中!与?的作用