- 博客(9)
- 资源 (1)
- 收藏
- 关注
原创 记录Android屏幕坐标系
View的静态坐标方法 手指触摸屏幕时MotionEvent 获取宽高 获取view位置 View滑动相关坐标系 View的scrollTo()和scrollBy()是用于滑动View中的内容,而不是改变View的位置;改变View在屏幕中的位置可以使用offsetLeftAndRight()和offsetTopAndBottom()方法,他会导致getLeft()等值改变 ...
2021-05-28 23:06:05
160
原创 记录Linearlayout 三次测量
记录Linearlayout 三次测量 1、LinearLayout针对设置weight与不设置weight的情况分别处理 2、在 LinearLayout 中总共有 3 个 for 循环,分别处理不同的流程 第一个 for 循环,只会在不使用 weight 属性时进入,并有可能会测量每个 childView 的大小 第二个 for 循环,在使用 android:measureWithLargestChild 时才会进入,并且即使进入也不会调用 childView 的测量方法,只会更新 mTotalLeng
2021-05-27 15:15:07
543
转载 Could not find com.android.tools.build:gradle:3.3.0.
Error:Could not find com.android.tools.build:gradle:3.3.0. Searched in the following locations: file:/F:/Android/Android Studio/gradle/m2repository/com/android/tools/build/gradle/3.3.0/gradle-3.0.0.pom file:/F:/Android/Android Studio/gradle/m2repository/co
2020-06-15 17:16:52
1107
原创 项目遇到的问题
1、activity反复进入onDestroy onCreate方法 在AndroidManifest.xml文件中使用android:configChanges="keyboardHidden|orientation"配置,当我们横竖屏切换的时候会直接调用onConfigurationChanged方法,而不会重新执行onCreate方法,那当然如果不配置这个属性的话就会重新调用onCreate方法了 ...
2020-06-01 16:38:39
132
转载 View的绘制流程
三个阶段 View的整个绘制流程可以分为以下三个阶段: measure: 判断是否需要重新计算View的大小,需要的话则计算; layout: 判断是否需要重新计算View的位置,需要的话则计算; draw: 判断是否需要重新绘制View,需要的话则重绘制。 这三个子阶段可以用下图来描述: measure阶段 此阶段的目的是计算出控件树中的各个控件要显示其内容的话,需要多大尺寸。起点是ViewR...
2019-02-19 17:52:24
180
原创 EventBus的简单使用
一、概述 EventBus是一个Android事件发布/订阅框架,通过解耦发布者和订阅者简化Android事件传递,事件可以理解为消息。 优点: 调度灵活,使用简单,快速且轻量。不依赖于 Context,使用时无需像广播一样关注 Context 的注入与传递。父类对于通知的监听和处理可以继承给子类。通知的优先级,能够保证 Subscriber 关注最重要的通知。粘滞事件(sticky event...
2019-01-14 15:51:09
256
原创 Android优化布局之Merge标签
需要注意的是:只可以作为xml layout的根节点,当需要扩充的xml layout本身是由merge作为根节点的话,需要将被导入的xml layout置于 viewGroup中,同时需要设置attachToRoot为True。 前言:使用是为了避免嵌套过多无用布局,嵌套的布局会让View Tree的高度越来越高,所以应该尽量减少布局的层级来优化布局 应用场景: 1、FrameLayout作为界...
2019-01-09 13:55:22
434
转载 Android APP 性能优化
用户体验的性能问题主要总结为4个类别:流畅、稳定、省电,省流量、安装包小 一个高质量的应用应该以4个方向为目标:快、稳、省、小。 快:使用时避免出现卡顿,响应速度快,减少用户等待的时间,满足用户期望。 稳:减低 crash 率和 ANR 率,不要在用户使用过程中崩溃和无响应。 省:节省流量和耗电,减少用户使用成本,避免使用时导致手机发烫。 小:安装包小可以降低用户的安装成本。 卡顿优化 Andro...
2019-01-09 10:17:55
205
转载 Gradle 提速
1、Gradle 官方的一些优化建议 尽可能的使用最新版本的 Gradle 和 JVM,这是最简单直接的方式,Gradle 开发团队会持续的更新 Gradle 版本,来优化构建速度以及提供一些新的特性,而使用新版本的 JVM,是因为 Gradle 运行在 JVM 上,所以,如果新版本的 JVM 提升了性能,同样也会让 Gradle 跑的更快。 2、Parallel execution,并行执行 G...
2018-12-28 17:34:58
257
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人