为什么setWidth不起作用?

时间:2014-09-19 20:48:21

标签: android android-layout

例如,对于Android中的TextView,您必须设置LayoutParams而不是setWidth方法。

TextView tv = new TextView(getContext());
LayoutParams params = new LayoutParams(100, LayoutParams.WRAP_CONTENT);
tv.setLayoutParams(params);

但为什么呢?在Android docs中,它表示会提供相同的结果。

1 个答案:

答案 0 :(得分:1)

您必须使用layoutParams,因为设置不同的宽度或高度可以更改布局的所有定位。所有视图层次结构都必须适应新维度,唯一的方法是更改​​布局参数。然后父母会被通知并开始测量孩子们观点的所有过程。