谷歌官方建议笔记——布局

原文

  • layout_weight会measure两次
  • ImageView+TextView可以使用Compound Drawable代替
  • 如果FrameLayout仅作为容器出现,merge会更高效,FrameLayout本身并没有任何控制位置的能力,只有背景和Padding
  • 超过10层会非常严重的性能问题
  • include Layout时,可以使用layout_*属性覆盖被include的Layout中的相应属性,前提是覆盖height和width
  • include可以使用id,如果include merge节点的话,无法使用id参考
  • ViewStub按需生成的view。使用setVisibility或者inflate进行显示。生成后的根View id以android:inflatedId指定,暂不支持merge
  • AsyncTask默认是一个进程公用一个线程池(3.0以后默认只有一个线程)
  • RelativeLayout会有两次layout遍历,GridLayout基本不会有这种情况(fill gravity、weight除外)
  • 尽量不调用requestLayout,requestLayout会传到root view,全部重绘

你可能感兴趣的:(谷歌官方建议笔记——布局)