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