7

textViewaに aを追加しようとしていframeLayoutます。にTextViewwrap_contentプロパティがあるため、テキストが大きくなると大きくなります。私はFrameLayoutこの関数でそれをに追加しています:

((FrameLayout) findViewById(R.id.mainLayout)).addView(mEditText);

これは、フレーム レイアウトの xml です。

<FrameLayout  
xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/mainLayout"
android:layout_width="wrap_content"  
android:layout_height="wrap_content"> 
</FrameLayout>

textView は常に画面の左上隅に表示されます。真ん中、または上真ん中に配置したいです。これはどのように行うことができますか?Androidでビューの位置を動的に設定するにはどうすればよいですか?
の回答を調べました。そして、彼らはあまり役に立ちませんでした:(主にクラッシュを引き起こしました..

4

6 に答える 6

15

これを試して:

FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT, Gravity.CENTER);

((FrameLayout) findViewById(R.id.mainLayout)).addView(mEditText, params);

必要に応じて重力を変更します。

ところで、フレームレイアウトはfill_parent幅と高さに使用する必要があります

于 2012-06-18T06:07:11.560 に答える
0

フレームレイアウトまたはテキストビューに重力または重力をレイアウトしてみてください。レイアウトを画面の中央に配置します。このように使用して、

android:layout_gravity="center"

また

android:gravity="center"
于 2012-06-18T06:07:55.407 に答える
0

テキストの重力を設定して試すことができます-

textview.setGravity(Gravity.center);

それ以外xmlの場合は、重力を中央に設定して、中央に表示されるようにします。使用centerinparentsする場合は、常に画面の中央に表示されます。

于 2012-06-18T06:08:21.153 に答える
0

FrameLayoutプロパティandroid:layout_widthandroid:layout_heighttoを設定し、プロパティfill_parentも設定します。、、など。_TextViewLayoutGravityCenterRightTop

ありがとう

于 2012-06-18T06:09:00.133 に答える
0

android:layout_gravity="center"フレーム レイアウトに追加する

<FrameLayout  
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/mainLayout"
    android:layout_width="wrap_content"  
    android:layout_height="wrap_content"
    android:layout_gravity="center" > 
</FrameLayout>
于 2012-06-18T06:19:15.190 に答える