mText1.getLayoutParams().height = NEW VALUE 在弹窗中不生效window
mText1.getLayoutParams().height = NEW VALUE does not take effect in popup window
在Android
申请中,
我创建了一个 LinearLayout,其中包含一个 TableLayout,其中包含一些行,其中一行包含一个 TextView名为 mText1
我使用此 LinearLayout 和 mText1 设置弹出窗口 window 如下:
mText1.getLayoutParams().height = OLD VALUE
然后当 table 的另一行中的弹出 window 用户点击 ImageView 时,我会想改变 mText1 的高度如下:
mText1.getLayoutParams().height = NEW VALUE
问题是这不会生效,但是当我输入以下代码时,它会生效:
mText1.setGravity(Gravity.CENTER)
或者如果我输入下面的代码而不是前面的代码,它也会生效:
mText1.setText("some value")
为什么?
更改LayoutParams
后需要调用requestLayout()
。
Call this when something has changed which has invalidated the layout
of this view. This will schedule a layout pass of the view tree.
setGravity
和 setText
正在为您处理。
在Android
申请中,
我创建了一个 LinearLayout,其中包含一个 TableLayout,其中包含一些行,其中一行包含一个 TextView名为 mText1
我使用此 LinearLayout 和 mText1 设置弹出窗口 window 如下:
mText1.getLayoutParams().height = OLD VALUE
然后当 table 的另一行中的弹出 window 用户点击 ImageView 时,我会想改变 mText1 的高度如下:
mText1.getLayoutParams().height = NEW VALUE
问题是这不会生效,但是当我输入以下代码时,它会生效:
mText1.setGravity(Gravity.CENTER)
或者如果我输入下面的代码而不是前面的代码,它也会生效:
mText1.setText("some value")
为什么?
更改LayoutParams
后需要调用requestLayout()
。
Call this when something has changed which has invalidated the layout of this view. This will schedule a layout pass of the view tree.
setGravity
和 setText
正在为您处理。