约束布局ConstraintLayout
指定宽高比:
一个设置为0dp(宽或高),然后使用app:layout_constraintDimensionRatio = "2:1" 指定view自身宽高比例。(width/height)
宽度自适应:(直接使用width = wrap_context时,过长的长度会超过左边界与右边界)
android:width = "0dp"
app:layout_constraintWidth_default="wrap":自适应大小,但不超过约束条件下的最大尺寸。(不超过左边界、右边界)
虚拟辅助线:Guideline 用于帮助定位
获取多个view的边界范围:Barrier 可获得多个view的 边界范围
链式布局:
app:layout_constraintHorizontal_chainStyle或app:layout_constraintVertical_chainStyle可分别设置水平或垂直链的模式。(决定互相连接的组件以什么形式连接在一起)。
Android Debug 之 Log 最佳实践:可以参考一下显示打log位置,那个功能不错
除了携带信息还携带log所处的位置android性能优化-渲染-过渡绘制 :尽量避免在根布局设置背景。
过度绘制 修改后的UI内存优化
Animation也会导致内存溢出,为什么?因为我们是通过view来进行演示的,导致view被Activity持有,而Activity又持有view。最后因为Activity无法释放,导致内存泄漏。解决方法是在Activity的ondestory()方法中调用Animation.cancle()进行停止。
我们尽量不要使用Activity的上下文,而是使用application的上下文,因为application的生命周期长,进程退出时才会被销毁。
代码优化:
打开Analyze->Run Inspection by Name… –>unused resource 点击开始检测无用代码。
网友评论