0

ADK を扱っていますが、問題があります。私は LinearLayout を使用しており、オブジェクトをレイアウトの中央と中央に配置したいと考えています。

これが私のコードです

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <TextView
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_gravity="center_horizontal|center_vertical"

    <TextView
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_gravity="center_horizontal|center_vertical"

    <Button
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_gravity="center_horizontal|center_vertical"

    <Button   
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_gravity="center_horizontal|center_vertical"

</LinearLayout>

それでも、TOP CENTER または左に移動します。LinearLayout の代わりに何か他のものを使用する必要がありますか? または、センタリングとミドルリングのための特別なコードはありますか?

助けてくれてありがとう!

注: 不要な部分は削除されます。

4

2 に答える 2

3

RelativeLayoutネストされた で使用できますLinearLayoutLinearLayoutセンタリングを適用せずにすべてのビューを入れて設定しcenterInParent="true"ます。

ただし、あなたの場合layout_gravity、ビューから属性を削除gravity="center"してルートビューに追加するだけです。

また、ビューのタグを閉じるのを忘れています;)

したがって、最終的なレイアウトは次のようになります。

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="center"
        android:orientation="vertical" >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

</LinearLayout>
于 2013-06-15T18:02:05.797 に答える
0

これらのことを考慮する必要があります

  1. LinearLayout はビューを 1 つずつ追加するだけなので、ビューを正しく表示するには、LinearLayout android:layout_width と android:layout_height を「fill_parent」にする必要があります。
  2. Android:layout_gravity は「center_horizo​​ntal|center_vertical」にする必要があります
  3. オブジェクトに android:layout_weight を追加してみてください
于 2013-06-15T18:03:47.527 に答える