2020.8.31
AS平台报错,添加android.enableAapt2=false后没有效果后,最后发现是C盘用户文件名是中文名导致,于是使用管理员账户修改为英文名,问题解决
2020.9.1
模拟器出现黑屏问题,产生E/OpenGLRenderer: GL error: 0x506日志,可能是上一个项目未关闭,此时关闭重启模拟器就可以
2020.9.8
一、掌握动画的循环播放
二、注意参数的初始化
2020.9.9
用动画实现不了进度条里的斜纹滑动,可以用canvas画布
2020.9.10
一、Handler.postDelayed(this, 1000)可以让更新UI的过程变得清晰可见
二、Alt+Enter导入类时注意选择正确的类
比如:import android.view.animation.Transformation;
import android.service.autofill.Transformation;
2020.9.11
一、Android中removeCallbacks失效原因:
当Activity进入后台运行后再转入前台运行,removeCallbacks无法将runnable从message queue中移除。
这是为什么呢?
在Activity由前台转后台过程中,线程是一直在运行的,但是当Activity转入前台时会重新定义Runnable runnable;也就是说此时从message queue移除的runnable与原先加入message queue中的runnable并非是同一个对象。如果把runnable定义为静态的则removeCallbacks不会失效。
二、Ctrl+鼠标左键
此快捷键可以查看鼠标选中的类或方法
2020.9.16
问题:导入的项目没法运行(运行箭头是灰色)
解决办法:Settings→plugins→搜索gradle→apply→ok
注意:如果本身是类库,其实是不能运行的,所以是灰色的按钮
2020.9.17
重复操作时,应判断是否为第一次。
2020.9.28
一、编译问题可通过更换依赖的版本号来解决
二、画笔的创建放在onDraw方法里很耗时间
2020.9.29
快速滑动时的卡顿现象的解决办法:
- 减少绘图次数(减少遍历)
- 及时invalidate更新视图
- setLayerType不应放在onDraw方法里
(setLayerType方法放在onDraw方法里会引发View重绘)
2020.10.09
一、增加代码的可读性:
1.变量名与函数名 2.功能封装 3.注释
二、Android Studio快捷键:
1.ctrl+/:批量注释与取消
2.ctrl+F:搜索
3.双击:选中变量
4.ctrl+Enter:快速导入
2020.10.10
一、屏幕适配:
1.px:是屏幕的像素点
2.dp:一个基于density的抽象单位,理论上说 1dp = 1 / 160 inch
3.width = metric.widthPixels;//屏幕宽度(单位:px)
4.density = metric.density;//屏幕密度(常见的有:1.5、2.0、3.0)
5.densityDpi = metric.densityDpi;//屏幕DPI(常见的有:240、320、480)
二、res/drawable文件夹:
drawable:主要放置xml配置文件或者对分辨率要求较低的图片
drawalbe-ldpi:低分辨率的图片,如QVGA (240x320)
drawable-mdpi:中等分辨率的图片,如HVGA (320x480)
drawable-hdpi:高分辨率的图片,如WVGA (480x800),FWVGA (480x854)
drawable-xhdpi:至少960dp x 720dp
三、float强制转int型:
+0.5f四舍五入,效率比math的四舍五入效率高