2

タイトルバーとして機能するビューの上部に LinearLayout を含む ListView があります。リストはスクロールできますが、タイトル バーはそのままです。タイトルバーに「戻る」ボタンが必要ですが、それによりタイトルテキストが中央に配置されなくなります。

中央揃えされていないテキスト 同じサイズの 2 つ目のボタン (タイトル バーの右側) を追加し、テキストを中央に配置するための「スペーサー」として機能するように非表示にしましたが、実際には多くのタイトル バーが失われます。エステート:

ここに画像の説明を入力

タイトル テキストを中央に配置し、[戻る] ボタンを無視するように Android に指示する方法はありますか? おそらくこれが人生のあり方なのかもしれませんが、不器用な2番目の目に見えないボタンなどに進む前に、全員で実行すると思いました. ありがとう

4

7 に答える 7

2

線形レイアウトの代わりに相対レイアウトを使用できます。

<RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="#ffffaa" >

        <Button
            android:id="@+id/button2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="false"
            android:gravity="center"
            android:text="Button" />

        <TextView
            android:id="@+id/textView1"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="false"
            android:gravity="center"
            android:paddingLeft="100dp"
            android:paddingRight="100dp"
            android:text="Header Title Embiggeden"
            android:textSize="20dp" />
    </RelativeLayout>
于 2012-12-20T11:24:59.320 に答える
2

LinearLayout の代わりに、ヘッダーに RelativeLayout を使用できます。そして、次のようにレイアウト パラメータを使用します。

  • 戻るボタンは、その親の左端に揃えられます。
  • TextView は、親全体 (LayoutParam.FILLPARENT) を重力 CENTER で取得します
于 2012-12-20T11:21:20.983 に答える
2

これはあなたのです。私は自分のプロジェクトでこれを行いました。

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

        <RelativeLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:background="#FF00FF"
            android:orientation="horizontal" >

        <Button
            android:id="@+id/testbutton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="left"
            android:text="Back" >
        </Button>

        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="Header"
            android:gravity="center_horizontal"
            android:textSize="30sp" ></TextView>
       </RelativeLayout>

        <ListView
            android:id="@id/android:list"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_marginTop="40dp"
            android:divider="@android:color/transparent"
            android:dividerHeight="10sp" >
        </ListView>



    </RelativeLayout>

これは必要なものであり、必要に応じて 2 番目の RelativeLayout の色を変更します。

于 2012-12-20T11:57:03.857 に答える
1

LinearLayout の代わりに Relative Layout を使用できます

<RelativeLayout android:layout_width="fill_parent" android:layout_height="wrap_content"
    android:background="#00ff00">

    <TextView android:layout_width="wrap_content" android:layout_height="wrap_content"
        android:gravity="center" android:maxLines="1" 
        android:ellipsize="end" android:layout_centerInParent="true"/>

    <Button android:layout_width="wrap_content" android:layout_height="wrap_content"
        android:layout_alignParentLeft="true" android:layout_centerVertical="true"/>

</RelativeLayout>

または FrameLayout を使用できます

<FrameLayout android:layout_width="fill_parent" android:layout_height="wrap_content"
    android:background="#00ff00">

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

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

    </FrameLayout>
于 2012-12-20T11:35:50.380 に答える
1

.setテキスト ビュー プロパティ と設定ボタンrelativelayoutの代わりに使用linearlayoutcenterinvertical=truealignParent=left.

于 2012-12-20T11:25:10.600 に答える
1

TextView の padding-left を非表示のボタン幅に設定

于 2012-12-20T11:27:03.177 に答える
1

次に、相対レイアウトを使用してみてください。テキストは

android:layout_centerHorizontal="true"

と 2 つのボタン

1.android:layout_toLeftOf="text id" 
2.android:layout_toRightOf="text id"
于 2012-12-20T11:21:04.880 に答える