Android开发中那些你不知道的事
来源:互联网 发布:激光笔软件 编辑:程序博客网 时间:2024/05/16 11:51
做Android3年多了,一直想写博客却一直没有动手,一是因为懒,二则还是因为懒...今天我的第一篇博客来分享下在Android开发过程中那些你不知道的事,一部分来源于知乎的一篇帖子(点击打开链接),一部分是我自己总结的。
1、View中的isShown()方法,以前都是用view.getVisibility() == View.VISIBLE来判断的(╯□╰);
2、Arrays类中的asList(T... array)方法,数组转List集合;反过来List.toArray();
3、android.text.format.Formatter类中formatFileSize(Context, long)方法,用来格式化文件Size(B → KB → MB → GB);
4、android.media.ThumbnailUtils类,用来获取媒体(图片、视频)缩略图;
5、String类中的format(String, Object...)方法,用来格式化strings.xml中的字符串;Context类中getString(int, Object... )方法用起来更加方便;
6、View类中的三个方法:callOnClick(),performClick(),performLongClick(),用于触发View的点击事件;
7、TextView类中的append(String)方法,添加文本;
8、开发像微信的聊天界面时,要做到输入法软键盘弹出后当前界面不被弹出屏幕外、最后一条聊天内容不被遮盖,需要设置androidWindowSoftInputMode="stateHidden|adjustResize"、ListView属性android:transcriptMode="alwaysScroll"
9、getParent().requestDisallowInterceptTouchEvent(true);剥夺父view对touch事件的处理权,这个我用的比较多;
10、使用support v4包中的LocalBroadcastManager发送、注册监听广播会提高效率;
11、Android 16后view.setBackgroundDrawable()已不推荐被使用,总是有个横杠看起来很不爽,使用ContextCompat.getDrawable(Context context, int regId);实际上ContextCompat中还有很多非常使用的方法,大家可以自行查看;
12、Android 23也就是最新的棉花糖之后getColor(int regId)也不推荐被使用,跟11差不多,使用ContextCompat.getColor(int regId, Resource reg);
13、倒计时使用Android自带的CountDownTimer,非常好用,代码简介明了;
14、每一个View或是继承View的类都可以getHandler(),需要更新ui线程时避免创建过多的Handlerd对象;activity中可以使用runOnUiThread;
15、使用Handler传递消息可以使用handler.obtainMessage(),实现Message的重利用,避免创建过多的对象,如果消息不附带其他对象,可以使用handler.sendEmptyMessage;
16、fragment嵌套内部fragment的manager通过getChildFragmentManager()获得;
未完待续~~~
- Android开发中那些你不知道的事
- iOS应用安全开发,你不知道的那些事
- iOS应用安全开发,你不知道的那些事
- iOS应用安全开发,你不知道的那些事
- 响应式网页开发你不知道的那些事
- Android AsyncTask 那些你不知道的事
- Android Context 你不知道的那些事
- 那些你不知道的事......
- IOCP你不知道的那些事
- UIResponder那些你不知道的事
- editplus - 你不知道的那些事
- 虚拟主机,你那些不知道的事
- 字符串,那些你不知道的事
- 搜索引擎那些你不知道的事
- iOS应用安全开发你不知道的那些事儿
- [Android] 你所不知道的drawable的那些细节
- Android 那些你所不知道的Bitmap对象详解
- Android 那些你所不知道的Bitmap对象详解
- 软件版本说明
- iOS 音频播放的几种方法
- GCC编译器(1)
- Using 1.7 requires compiling with Android 4.4 (KitKat); currently using API XX
- js获取当前日期时间,昨天、本月第一天和最后一天
- Android开发中那些你不知道的事
- qml学习----------Flow(流式布局)
- mount.cifs
- 副本集指南(一)
- java io
- web_servlet
- 自定义TextView实现艺术体
- Vim常用命令
- 数据加密的基本使用