TextUtils.isEmpty()- 常用的一个验证字符是否为空Html.fromHtml()- 快速的转化为HTML,执行速度不是太空,不适合大篇幅EditText.setError()- 对用户名,邮箱,手机什么的验证,会弹出一个popupwindow,效果很好Build.VERSION_CODES- 没个版本存在着差异,兼容时常用到的Log.getStackTraceString()- 日志通常我们只是打印,但有时需要保持到数据库或提交。LayoutInflater.from()- 大家应该常用它动态的加载布局,它简化了一系列getSystemService()调用的简单工具ViewConfiguration.getScaledTouchSlop()- 使用ViewConfiguration中提供的值以确保所有触摸交互都是统一的PhoneNumberUtils.convertKeypadLettersToDigits- 字母转化为数字,例如T9输入法,比如啊,a,b,c都会转化为2ContextThemeWrapper- 在运行时去修改主题。Space- 很棒的分隔符,4.0+使用ValueAnimator.reverse()- 很流畅的去取消正在运行的动画。DateUtils.formatDateTime()- 格式化时间,我们可能不太常用。AlarmManager.setInexactRepeating- 通过闹钟分组来省电,就如在不唤醒休眠下的间隔中有10个闹钟,在唤醒后将合并为一个,所以可以节约资源。Formatter.formatFileSize()- 就是转化文件大小,KB M G等之间。ActionBar.hide()/.show()- 如名,就是控制actionBar的显隐。Linkify.addLinks()- 给Textview加上链接。StaticLayout- 在自定义View中渲染文字很实用。Activity.onBackPressed()- 简单的管理后退操作,比如我们的Double Back press to exitGestureDetector- 用来监听动作事件和相关监听事件,如点击,滚动,滑动,比自己实现系统的一些事件更简单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- 这个应该也很多人用过,站位的View,之后可载入一个布局DisplayMetrics.density- 常用来获取设备宽高Pair.create()- *看半天也没明白是在干嘛UrlQuerySanitizer- *译文可能是对URL进行检测(但还是不太懂事干嘛)Fragment.setArguments- Fragment间传递参数DialogFragment.setShowsDialog()- 显示一个DialogFragment,这里可以控制它是否作为一个dialogFragmentManager.enableDebugLogging()- 当你检测fragment状态时使用LocalBroadcastManager- 这要比全局的broadcast更加安全,简单,快速。PhoneNumberUtils.formatNumber()- 电话号码的格式化Region.op()- 对比两个渲染之前的区域,如果你有两条路径,怎么知道它是否会重叠呢,使用这个Application.registerActivityLifecycleCallbacks- *不懂,从名字你应该可以看出点所以然versionNameSuffix- 这个gradle设置为了方便的定义版本名,如当前版本是Debug还是RreleaseCursorJoiner- 如果你只使用一个数据库的话,那么使用SQL的join就可以了,但你如果你使用了两个独立的CursorJoiner 那么CursorJoiner就很实用了。Genymotion- 这是模拟器,不是类,非常快的模拟器,可能比你手机还快-nodpi- 保持显示一致,这里边的不会做自动缩放。BroadcastRecevier.setDebugUnregister()- 译文是一个有用的测试工具,但不是太懂是什么东西Activity.recreate()- 用于重建Activity.PackageManager.checkSignatures()- 同时安装两个app时可以用这个进行签名检查。Activity.isChangingConfigurations()- 如果activity中的Configuration会经常被改变的话,使用这方法不用手动保持了。SearchRecentSuggestionsProvider- 可以创建有提示效果的ProviderViewTreeObserver- View的检测工具,监控View各种状态org.gradle.daemon=true-gradle的设置项,仅在命令行使用。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,检查层级来优化视图AtomicFile- *不明白是怎么用的,也没查阅到什么信息。(Manipulates a file atomically by using a backup file)ViewDragHelper- 可拖动的视图实现起来是比较复杂的,这个类可以很好的帮你。PopupWindow- 一个浮动视图,应用应该已经很广泛了。ActionBar.getThemedContext()- 创建自己的actionBar主题时使用ThumbnailUtils- 创建图像缩略图,并且可以创建视频的缩略图,就是我们平时图像采样用的Context.getExternalFilesDir()- 获取SD卡目录,很常用SparseArray- 一个针对Map<Integer, Object>获这样的hashMap设计的类,原来不太懂,不清楚做了什么优化PackageManager.setComponentEnabledSetting()- 开启/关闭组件的方法。SQLiteDatabase.yieldIfContendedSafely()- 暂停数据库事物来减少系统使用Environment.getExternalStoragePublicDirectory()- 获取SD卡公共路径,如铃声,音乐什么的。View.generateViewId()- *看名称是生成view 的id,不清楚是干嘛用的ActivityManager.clearApplicationUserData()- 重置应用程序,注销用户的最简单方法Context.createConfigurationContext()- *不清楚使用环境ActivityOptions- 可以为activity添加动画AdapterViewFlipper.fyiWillBeAdvancedByHostKThx()- 因为它有趣,没有其他原因(不明觉厉,不知道怎么个有趣法)ViewParent.requestDisallowInterceptTouchEvent()- 事件的打断,从父视图中夺取控制权
Android 开发技巧集合
最新推荐文章于 2024-04-15 08:41:44 发布
本文深入探讨Android开发过程中的关键技巧与优化策略,涵盖从基础的文本验证、布局加载到高级的日志管理、内存使用优化等内容。通过具体实例解析如何有效提升应用性能和用户体验,适合Android开发者学习和参考。
393

被折叠的 条评论
为什么被折叠?



