安卓基础
文章平均质量分 66
水煮鱼在飞
安卓开发
展开
-
handler导致内存泄露的真正原因
handler是我们在更新UI时经常使用到的类,但是不注意的话,很容易就导致内存泄露,最后导致OOM,故现在探究下handler导致内存泄露的原因及有哪些常用的解决办法。先看下面一段代码: 可以看到这段代码编辑器为我们标出了黄色,并且提示如下:This Handler class should be static or leaks might occur (anonymous ...原创 2018-09-17 18:23:09 · 15272 阅读 · 0 评论 -
关于AlertDialog的一些
setView与setContentView的区别看下面一段代码: AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setView(R.layout.layout_updatedialog) .setTitle("更新") ...原创 2018-09-14 15:53:55 · 526 阅读 · 0 评论 -
onTouchListener、onTouchEvent、onClick区别
这里主要探讨Activity的onTouchEvent()、View的onTouch()、onTouchEvent()、onClick()之间的区别测试代码如下: @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstan...原创 2018-10-31 17:32:30 · 1137 阅读 · 0 评论 -
安卓support包冲突处理
support包一般有v4/v7/v13,主要是兼容低版本,v4兼容到api level 4(android 1.6及以上),v7(android 2.1及以上),v13(android 3.2及以上,一般用于平板),需要注意的是v7包默认包含了v4.解决方法:1. 在app/gradle文件中添加如下代码,让所有的第三方包强制使用指定版本的support包:configuratio...原创 2019-04-16 08:30:23 · 519 阅读 · 0 评论 -
安卓中如何获取view的高度
我们知道在oncreate中View.getWidth和View.getHeight无法获得一个view的高度和宽度,这是因为View组件布局要在onResume回调后完成。getMeasuredHeight()与getHeight的区别实际上在当屏幕可以包裹内容的时候,他们的值相等,只有当view超出屏幕后,才能看出他们的区别:getMeasuredHeight()是实际View的大...原创 2019-06-06 13:43:32 · 1612 阅读 · 0 评论