Android相关
文章平均质量分 81
wangxp423
这个作者很懒,什么都没留下…
展开
-
Android窗口机制:Window PhoneWindow DecorView
一,布局在Android studio的Tools–>Layout Inspector–>选中连接的手机–>打开你要看的应用,然后在屏幕上就会显示当前页面的布局结构图View Tree 切换页面,会显示不同的页面的View Tree,然后会将View Tree保存在项目的captures目录下。从上图我们可以看到,我的页面只有一个LinearLayout下的Text...原创 2018-07-11 11:05:08 · 3866 阅读 · 1 评论 -
Activity启动模式
一,启动模式分类:Standard(标准模式,默认)SingleTop(栈顶复用模式)SingleTask(栈内复用模式)SingleInstance(单实例模式)通过AndroidManifest可配置Activity的LaunchMode.如果没有配置,默认是Standard模式。taskAffinity属性,可设置Activity的栈。默认是当前包名。此属性仅适用于后三种启动...原创 2018-11-04 17:10:22 · 2560 阅读 · 2 评论 -
Activity启动模式之SingleTask
启动模式系列之:Activity启动模式(一)一,SingleTask模式(栈内复用模式)解释:只要在栈(TaskRecord)内存在栈内复用模式的Activity。无论是在栈顶还是在栈内,多次调用都会复用实例。不会重复创建。除此之外栈内复用模式还可以设置不同的任务栈,即taskAffinity属性。二,未设置taskAffinity属性解释:没有设置taskAffinity属性。启动...原创 2018-11-06 10:31:32 · 2259 阅读 · 0 评论 -
可能是最详细的Android点击事件处理详解
面试的时候,很多时候都会问到Touch事件的传递,而且问法角度都有所不同,但是还是会遵循基本的事件传递规则的,可能他问的你没处理过,但是根据基本规则慢慢思考来回答,都不会错。一,简介首先我们知道touch事件 主要是是在三个方法中传递和处理的。分别是: - dispatchTouchEvent 事件分发 - onInterceptTouchEvent 事件拦截 - o...原创 2018-09-07 18:18:26 · 6482 阅读 · 0 评论 -
可能是最详细的Android点击事件处理详解(二)
上一篇我们主要详细描述了touch事件在各层的传递 本篇文章主要是对比touch在不可滚动和可滚动的ViewGroup事件的传递过程如上图: - 左图:是ViewGroup嵌套View,不可滑动 - 右图:也是ViewGroup(RecyclerView)嵌套View,可以滑动主要想对比的就是,当手指按住View层,此时View层有Selector颜色变化,此时手指移动...原创 2018-09-10 16:37:21 · 319 阅读 · 0 评论 -
可能是最详细的Android点击事件处理详解(三)
前两篇文章: 可能是最详细的Android点击事件处理详解 可能是最详细的Android点击事件处理详解(二) 这里再次延伸一下,在ScrollView和RecyclerView嵌套中touch事件的传递过程,以及嵌套滑动冲突的问题。如上图,外层是一个NestedScrollView,上半部分是一个400dp的RecyclerView。下面是用来填充的一些TextVie...原创 2018-09-11 14:30:17 · 476 阅读 · 0 评论 -
Android Launcher:Activity的启动过程
本文转载自凶残的程序员的博客 [Android Launcher 启动 Activity 的工作过程]https://blog.csdn.net/qian520ao/article/details/78156214本来想写一篇关于Activity的启动过程的博客,发现凶残的程序员在上面链接中的文章中已经写得很好很详细了。所以就转载作为记录。 以下图片效果也是凶残的程序员...原创 2018-07-19 17:42:18 · 417 阅读 · 0 评论 -
Android内存泄露分析
一,内存泄露内存泄露:一个不在被使用的对象被另一个存活着的对象引用,在这种情况下垃圾回收器会跳过他,因为这种引用关系足以让该对象驻留在内存中,内存泄露是在组织垃圾回收器为未来的内存分配提供空间,这些泄露的对象一直占据着内存,导致我们的堆内存空间变得更小。也加剧了垃圾回收调用的频繁程度,妨碍应用程序的正常执行。内存溢出:通常的理解就是内存不够,是指堆内存大小超出了应用程序的分配内存范围导致的...原创 2018-07-13 15:27:01 · 1143 阅读 · 0 评论 -
Android内存抖动分析与注意事项
一,内存抖动内存抖动:指的是在短时间内大量的新对象被实例化,运行时无法承载这样的内存分配,在这种情况下垃圾回收事件被大量调用,影响到应用程序的UI和整体性能。二,分析内存抖动Android Studio提供了一个 profile的工具,可以帮助我们分析内存情况,在studio的上不有一个表盘的图标 点击红框图标,然后就会运行当前项目,选中连接的手机,然后在studio的底部就...原创 2018-07-12 11:21:10 · 1308 阅读 · 0 评论 -
一些自定义View
ViewExercise主要是自己平时工作之余关于View相关的一些练习。功能概览如下图所示:目录截图Toolbar效果练习StatusBar效果练习Canvas Path 贝塞尔曲线仿小米指南针仿小米指针语音搜索动画listView 缓动水波纹 雷达搜索 示例代码:http原创 2018-07-18 10:07:01 · 364 阅读 · 0 评论 -
Fragment切换中适配"沉浸式状态栏"
传送门: fitSystemWindow属性的作用 http://blog.csdn.net/wangxp423/article/details/79564244 fitSystemWindow属性实战 http://blog.csdn.net/wangxp423/article/details/79566465 适配“沉浸式”状态栏 http://blog.csdn.net/...原创 2018-03-18 16:28:28 · 19243 阅读 · 0 评论 -
适配“沉浸式”状态栏
传送门: fitSystemWindow属性的作用 http://blog.csdn.net/wangxp423/article/details/79564244 fitSystemWindow属性实战 http://blog.csdn.net/wangxp423/article/details/79566465上两篇我们讲了fitSystemWindows实现沉浸式状态栏,本篇主...原创 2018-03-17 22:08:13 · 11188 阅读 · 0 评论 -
使用fitSystemWindow属性实现"沉浸式"状态栏
上一篇文章我们讲解了fitSystemWindow属性的作用 http://blog.csdn.net/wangxp423/article/details/79564244本篇讲解fitSystemWindow的实际应用一,有图有真相 效果图对应手机系统版本4.3、5.1、6.0.1 因为沉浸式(透明)状态栏只对手机4.4以上版本支持。所以4.3显示系统默认版本,这个也是手机...原创 2018-03-15 13:06:28 · 10520 阅读 · 0 评论 -
fitSystemWindow属性对于状态栏的作用
一,首先我们来看一下QQ对于状态栏适配的效果图 从左到右手机系统版本依次是4.3、5.1、6.0.1的显示效果,我们后面讲解状态栏都根据这个适配进行讲解。二,fitSystemWindow属性官方描述: Boolean internal attribute to adjust view layout based on system windows such as the st...原创 2018-03-15 10:28:25 · 12161 阅读 · 0 评论 -
Activity启动模式之SingleInstance
启动模式系列之:Activity启动模式(一)启动模式系列之:Activity启动模式(二)一,SingleTask模式(栈内复用模式)解释:只要在栈(TaskRecord)内存在栈内复用模式的Activity。无论是在栈顶还是在栈内,多次调用都会复用实例。不会重复创建。除此之外栈内复用模式还可以设置不同的任务栈,即taskAffinity属性。二,未设置taskAffinity属...原创 2018-11-07 09:46:20 · 1050 阅读 · 0 评论