本文是Android贴士大集锦的第二部分。
DateUtils.formatDateTime()——提供区域格式化时间/日期字符串的一站式服务。
AlarmManager.setInexactRepeating——通过闹铃分组的方式来节省电量,即使你只调用一个alarm实例,它仍然比较好用(可以确保在使用完毕时自动调用AlarmManager.cancel()。
Formatter.formatFileSize()——一个区域化的文件大小格式化工具。
ActionBar.hide() / .show()——可以在actionBar显示或者隐藏的时候进行动画展示。可以在切换到全屏的时候更优雅。
Linkify.addLinks()——可以控制在Text上添加链接。
StaticLayout——在自定义View中渲染文字的时候很实用。
Activity.onBackPressed()——方便控制返回按钮,在需要自定义返回键的操作时候,可以用到。
GestureDetector——可以监听动作事件和相关的监听器事件(点击,滚动,滑动等)。比自己实现系统的一些动作事件更简单。
DrawFilter——可以让你操作Canvas,即使没有调用draw方法。例如,可以在创建自定义View的时候设置一个DrawFilter,给父View里面的所有View设置反别名。
ActivityManager.getMemoryClass()——可以让你清楚知道设备还剩多少内存。在计算怎么设置缓存大小的时候就很有用。
SystemClock.sleep()——这个方法在保证一定时间的sleep时很方便,通常我用来进行debug和模拟网络延时。
ViewStub——它是一个初始化不做任何事情的View,但是之后可以载入一个布局文件。在慢加载View中很适合做占位符。唯一的缺点就是不支持标签,所以如果你不太小心的话,可能会在视图结构中加入不需要的嵌套。
DisplayMetrics.density——通过这个方法可以获取屏幕的密度,很多时候需要去掉系统自动缩放精度的功能,但是有时候在控制的时候也很有用(尤其是在自定义View的时候)。
Pair.create()——方便构建类和构造器的方法。