Android开发惯用工具类或者方法(整理)
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()
|
事件的打断,从父视图中夺取控制权
|