描述
在项目中偶然看到其他人有在用
1 | Looper.myQueue().addIdleHandler(new IdleHandler() { |
之前一直不知道这么写是怎么回事, 今天特意研究了一下源码, 搞清楚了IdleHandler的机制.
在项目中偶然看到其他人有在用
1 | Looper.myQueue().addIdleHandler(new IdleHandler() { |
之前一直不知道这么写是怎么回事, 今天特意研究了一下源码, 搞清楚了IdleHandler的机制.
我们的应用中常常会出现按钮等状态的变化,举个例子,当下载一个应用时,下载之前按钮的状态应为下载,并设定背景为蓝色,点击下载之后,状态变为进行中,并设定背景为红色,当下载完成了,状态变为安装,并设定背景为黄色。
1 | public enum Status { |
最近公司的项目都已经迁移到了Android Studio上面进行开发,刚转过来各种不适应,甚至连快捷键都不知道,现在用得顺手一些了,总结一下开发中用到的快捷键,以后会根据新用到的快捷键进行更新~
我们在使用android的通知栏(Notification)时,需要新建一个PendingIntent对象用于处理点击该通知之后的事件。
PendingIntent需要传入一个Intent对象,用于打开Activity、Broadcast或是Service。
我们在使用android的通知栏(Notification)时,需要新建一个PendingIntent对象用于处理点击该通知之后的事件。
PendingIntent需要传入一个Intent对象,用于打开Activity、Broadcast或是Service。
我们在Android应用开发中经常会用到ListView这个组件,关于它的特性以及如何优化,网上已经有了太多例子,我就不再赘述,不了解的可以去Google一下。
最近的项目中正好用到了带按钮、进度条的自定义样式的ListView,下面我就来讲一讲ListView中的部分刷新的方法。
当ListView的item中出现需要更新状态的部件(比如Button、进度条等),已按钮的状态为例子,当点击这个按钮时,需要根据服务器端返回的状态码对这个按钮的状态的进行变化(如按钮文字的变化),这时如果采用一般的 notifyDataSetChanged()
方法的话,会更新整个ListView,造成ListView界面的闪烁,这会造成很不好的用户体验,所以为了能及时更新按钮的状态,又不造成界面的闪烁,我们就要用到了部分刷新。
你在EditText上输入以后,想在下一行输入框输入,可能需要去点击下一行输入框,让它获取焦点,也可能要隐藏软键盘,在点击输入框,弹出软键盘。或者已经到了最后一行输入框,输入完毕以后,要点击登录,注册,或者链接按钮,可能要去隐藏它,感觉操作狠繁琐。用户体验不好,有没有解决办法呢?