重量设定表现

时间:2013-10-27 23:21:21

标签: android performance

我听说布局参数中的重量设置会极大地影响应用的效果。所以我会谨慎使用它,或者更好 - 完全避免使用它......

什么是最佳性能构建按钮,填充2/3可用宽度第二按钮使用其余(宽度的1/3)

什么是最佳效果构建填充100dp可用宽度的按钮以及使用其余 第二个按钮?

是的,我搜索了它,但没有发现性能,真的!:)

提前致谢!

2 个答案:

答案 0 :(得分:1)

您可以而且应该在使XML更容易时使用layout_weight。除非您具有非常深的嵌套布局(在简单地对齐两个按钮时不是这种情况),否则它不会成为问题。

如果您担心性能,请不时查看层次结构查看器,并检查布局树是否不太大。单击右上方的一个按钮,估算度量/布局/绘制时间,并查看是否有任何红点。这些布局可能太慢,可能需要进行优化。

总的来说; layout_weights也不错。

关于实施,使用第一个问题的布局权重,以及100dp&第二个(线性内部)的fill_parent宽度。

答案 1 :(得分:1)

  

所以我会谨慎使用它,或者更好 - 完全避免使用它......

迅速将这种想法从头脑中解脱出来。 layout_weight在适当的情况下非常方便。我绝对不会排除完全使用它。在谨慎的情况下,我不确定你的顾虑是什么,但如果你正确使用它,你会没事的。

  

构建Button的最佳性能方法是什么?填充2/3的可用宽度和第二个按钮使用其余部分(宽度的1/3)?

使用layout_weight时要记住的主要事项是,width个孩子View应为0dp,水平LinearLayoutheight 0dp使用垂直LinearLayout时。请参阅下面的简短示例。使用layout_weight可以帮助您保持layouts在不同屏幕尺寸/分辨率下的外观相同。如果您执行类似下面的代码并且未在父weightSum中声明LinearLayout,那么CPU将为您计算它。您只需要声明weightSum,如果您正在做一些您想要空的空间或其他情况,但一般情况下最好让它为您计算。

 <LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"/>
<Button
    ...
    android:layout_width="0dp"
    android:layout_height="wrap_content"/>
<Button
    ...
    android:layout_width="0dp"
    android:layout_height="wrap_content"/>
</LinearLayout>
  

构建Button的最佳性能方法是什么?填充100dp的可用宽度,使用其余按钮填充第二个按钮?

使用LinearLayout,您可以将首个width的{​​{1}}设置为100dp,将第二个Button的{​​{1}}设置为width 。这将导致您的第一个Button被提取,而您的第二个match_parent将使用可用的Button