我有一个TextView1,buttons1和buttons2水平。 当Button2单击Button1不可见时。 当Button1不可见时,我需要增加textview的宽度以覆盖button1不可见时创建的空间,反之亦然。 可以请任何人帮忙如何动态更改Textview宽度。
注意:Textview tv.setWidth(pix)不起作用。当我试图找到tv.getWidth()的值时总是为零。
答案 0 :(得分:2)
请尝试使用GONE而不是使用INVISIBLE。当使用INVISIBLE时,即使你看不到它,它仍然需要一个空间。
答案 1 :(得分:2)
`
<TextView
android:layout_width="odp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/hello" />
<Button
android:id="@+id/btn1"
android:layout_width="odp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/hello"
android:visibility="visible" />
<Button
android:id="@+id/btn2"
android:layout_width="odp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/hello" />
</LinearLayout>`you can use weight for three element and button1.setVisibility(View.GONE)
答案 2 :(得分:0)
将您的小部件包裹在RelativeLayout
中,然后检查。如果隐身,您可以将textview
置于button
之上。如果您使用LinearLayout
,则无法执行此操作,因为它会将小部件设置为水平或垂直且不重叠。