Android以编程方式为TextView设置重力

我可以在textview的xml中使用android:gravity="bottom|center_horizontal"来获得我想要的结果,但是我需要以编程方式执行此操作。 如果这在relativelayout布局中很重要,我的textview在一个tablerow里面。

我努力了:

LayoutParams layoutParams = new TableRow.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT, Gravity.BOTTOM | Gravity.CENTER_HORIZONTAL);
labelTV.setLayoutParams(layoutParams);

但是,如果我理解正确,那会将它应用于tablerow ,而不是textview?


labelTV.setGravity(Gravity.CENTER | Gravity.BOTTOM);

另外,你是在谈论引力还是关于layout_gravity? 后者在RelativeLayout中不起作用。


这会将文本置于文本视图中:

TextView ta = (TextView) findViewById(R.layout.text_view);
LayoutParams lp = new LayoutParams();
lp.gravity = Gravity.CENTER_HORIZONTAL;
ta.setLayoutParams(lp);

我们可以在任何视图中设置布局重力,

myView = findViewById(R.id.myView);
myView.setGravity(Gravity.CENTER_VERTICAL|Gravity.RIGHT);
 or
myView.setGravity(Gravity.BOTTOM);

这对于下面的xml代码是等价的

<...
 android:gravity="center_vertical|right"
 ...
 .../>
链接地址: http://www.djcxy.com/p/65397.html

上一篇: Android set the gravity for a TextView programmatically

下一篇: Ball to Ball Collision