Android开发常用工具类或者方法(整理)

绿色:频繁使用
TextUtils.isEmpty()
常用的一个验证字符是否为空
Html.fromHtml()
快速的转化为HTML,执行速度不是太快,不适合大篇幅
EditText.setError()
对用户名,邮箱,手机什么的验证,会弹出一个popupwindow,效果很好
Build.VERSION_CODES
 没个版本存在着差异,兼容时常用到的
Log.getStackTraceString()
日志通常我们只是打印,但有时需要保持到数据库或提交。
LayoutInflater.from()
获得LayoutInflater对象, 大家应该常用它动态的加载布局,它简化了一系列getSystemService()调用的简单工具
ViewConfiguration.
getScaledTouchSlop() 
使用ViewConfiguration中提供的值以确保所有触摸交互都是统一的
PhoneNumberUtils.
convertKeypadLettersToDigits
字母转化为数字,例如输入1-800-GOOG-411 ,会转化成1800-4664-411
ContextThemeWrapper
 在运行时去修改主题
Space控件
android4.0引入的,是个空白的view,用于进行分隔
ValueAnimator.reverse()
很流畅的去取消正在运行的动画。
DateUtils.formatDateTime()
org.apache.http.impl.cookie包下,格式化时间
AlarmManager.setInexactRepeating
通过闹钟分组来省电,就如在不唤醒休眠下的间隔中有10个闹钟,在唤醒后将合并为一个,所以可以节约资源。
Formatter.formatFileSize()
就是转化文件大小,KB M G等之间。
ActionBar.hide()/.show()
actionBar的显示隐藏。
Linkify.addLinks()
给Textview加上链接。
StaticLayout
是android中处理文字换行的一个工具类,已经实现了文本绘制换行处理,在自定义View中渲染文字很实用。
Activity.onBackPressed()
简单的管理后退操作,比如我们的点击两次返回键退出 
GestureDetector
用来监听动作事件和相关监听事件,如点击,滚动,滑动,比自己实现系统的一些事件更简单
DrawFilter
可以让你在没有调用Draw的情况下调用Canvas,可以在创建自定义View时调用DrawFilter(For example, you could create a custom View which sets a DrawFilter which anti-aliases the draws of the parent View.不明白)
ActivityManager.getMemoryClass() 
获取剩余内存
ViewStub
缓加载布局
DisplayMetrics.density
常用来获取设备宽高
UrlQuerySanitizer
 *译文可能是对URL进行检测(但还是不太懂事干嘛)
Fragment.setArguments()
Fragment间传递参数,官方推荐的方式
DialogFragment.setShowsDialog()
显示一个DialogFragment,这里可以控制它是否作为一个dialog
FragmentManager.
enableDebugLogging() 
控制是否打开框架内Fragment管理器的调试日志(log)。如果开启调试日志,那么就会在Logcat中看到框架执行Fragment操作的日志信息。
LocalBroadcastManager
V4包中的一个类,主要负责程序内部广播的注册与发送。它只是适用代码中注册发送广播,对于在
AndroidManifest中注册的广播接收,则不适用。
PhoneNumberUtils.formatNumber()
电话号码的格式化
Region.op()
对比两个渲染之前的区域,如果你有两条路径,怎么知道它是否会重叠呢,使用这个
Application.
registerActivityLifecycleCallbacks
API仅在14+版本上提供此接口回调,Application通过此接口提供了一套回调方法,用于让开发者对Activity的生命周期事件进行集中处理。
CursorJoiner
如果你只使用一个数据库的话,那么使用SQL的join就可以了,但你如果你使用了两个独立的CursorJoiner 那么
CursorJoiner就很实用了。
nodpi
保持显示一致,这里边的不会做自动缩放。
Activity.recreate()
 用于重建Activity.
PackageManager.checkSignatures()
同时安装两个app时可以用这个进行签名检查。
Activity.isChangingConfigurations()
 如果activity中的Configuration会经常被改变的话,使用这方法不用手动保持了。
SearchRecentSuggestionsProvider
可以创建有提示效果的Provider
ViewTreeObserver
View的检测工具,监控View各种状态
DatabaseUtils
包含各种数据库使用工具
android:weightSum (LinearLayout)
 如果想使用weight但又不想填满整个屏幕,就可以用来定义总大小
android:duplicateParentState(View)
可以使子View复制父View的方法。比如一个ViewGroup是可点击的,那可以用这个方法在它被点击时改变所有子View的状态。
android:clipChildren (ViewGroup)
如果此属性设置为不可用,那么viewgroup的子View在绘制的时候会超出他的范围,做动画时常用到。
android:fillViewport (ScrollView) 
用来解决内容不足时添不满屏幕的问题。
android:tileMode(BitmapDrawable) 
可指定图片使用重复填充的模式。
android:enterFadeDuration
android:exitFadeDuration
(Drawables)
Drawable有多种状态时,可以定义它展示前的淡入淡出。
android:scaleType(ImageView) 
定义Imageview中的缩放与裁剪。
<merge>
 此标签可以在另一个布局中包含别的布局,而不重新创建viewgroup,检查层级来优化视图
ViewDragHelper 
可拖动的视图实现起来是比较复杂的,这个类可以很好的帮你。
PopupWindow
 一个浮动视图,应用应该已经很广泛了。
ActionBar.getThemedContext()
 创建自己的actionBar主题时使用
ThumbnailUtils
 创建图像缩略图,并且可以创建视频的缩略图,就是我们平时图像采样用的
Context.getExternalFilesDir() 
获取SD卡目录,很常用
SparseArray 
一个针对Map<Integer,Object>获这样的hashMap设计的类,官网推荐使用
PackageManager.
setComponentEnabledSetting()
开启/关闭组件的方法。
SQLiteDatabase.
yieldIfContendedSafely()
暂停数据库事物来减少系统使用
Environment.
getExternalStoragePublicDirectory()
获取SD卡公共路径,如铃声,音乐等。
Environment.
getExternalStorageDirectory()
获取sd卡的根目录
ActivityManager.
clearApplicationUserData()
重置应用程序,注销用户的最简单方法
ActivityOptions 
可以为activity添加动画
ViewParent.requestDisallowInterceptTouchEvent()
事件的打断,从父视图中夺取控制权
 
Para obter informações mais completas sobre otimizações do compilador, consulte nosso aviso de otimização.