web-dev-qa-db-ja.com

プログラムでAndroidを設定:layout_centerHorizo​​ntal

Xmlでは、次のことができます。

<TextView
    ...
    Android:layout_centerHorizontal="true"
    ...
/>

TextViewのインスタンスがある場合、プログラムでこれを行うにはどうすればよいですか?

43
nhaarman

RelativeLayout.LayoutParamsクラスのaddRuleメソッドを使用する必要があります。

layoutparams.addRule(RelativeLayout.CENTER_HORIZONTAL);
mTextView.setLayoutParams(layoutParams);
97
Ronnie

変数tvにTextViewが保存されていると仮定します:

RelativeLayout.LayoutParams lp = (RelativeLayout.LayoutParams) tv.getLayoutParams();
lp.addRule(RelativeLayout.CENTER_HORIZONTAL);
tv.setLayoutParams(lp);

トリックを行う必要があります。

27
nEx.Software