以编程方式调整TextView的大小

Use*_*590 3 android textview

我的应用程序中有一个textView.现在,我想在点击时调整textView的大小.我给出了它的最大高度和最大宽度,但它没有调整大小并显示布局中定义的宽度和高度.任何帮助,将不胜感激

这是我的代码:

 <TextView
        android:id="@+id/textView2"
        android:layout_width="30dp"
        android:layout_height="40dp"
        android:layout_gravity="fill_horizontal"
        android:layout_marginLeft="10dip"
        android:layout_marginTop="10dip"
        android:text="Hello"/>
Run Code Online (Sandbox Code Playgroud)

Jon*_*han 5

从逻辑上讲,为什么在更改其最大高度和最大宽度时TextView会调整大小?你所说的是"TextView,无论你喜欢与否,你都是30dp x 40dp".然后你过来说"哦,顺便说一句,如果有一天你可以获得更多的空间,你可以一直到40dp x 50dp,但现在你仍然是30dp x 40dp".无论你让TextView有多大,它仍然是30dp x 40dp,因为你没有告诉它改变它的大小,你只是改变了它可能有多大.

如果你想改变这种行为,你需要做的就是说"嘿TextView,你可以自由地获得你想要的那么大,我已经把这些上限放在你身上了".为此,您将使用如上所述/如下所示的LayoutParams.

// set the max height
textView.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
Run Code Online (Sandbox Code Playgroud)

这也假设您希望最大高度/宽度成为限制因素.如果你只想说"嘿textView,就是这个尺寸",Ajay的答案就可以解决问题.