0

ActionBarSherlock でカスタム タイトル バーを実装しようとしています。タイトル バーには、左右の端に 2 つのボタンがあり、中央にテキストビューがあります。テキストビューは、2 つのボタンの間のスペースを占有する必要があります。

layout_weight を設定してみましたが、なぜかまったく効果がありませんでした。

これは res/layout にあるカスタム レイアウトです。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >

<Button
    android:id="@+id/btn_left"
    android:layout_width="0dip"
    android:layout_height="match_parent"
    android:layout_weight="1"
    android:text="Left" />

<TextView
    android:id="@+id/header"
    android:layout_width="0dip"
    android:layout_height="match_parent"
    android:gravity="center_horizontal"
    android:layout_weight="4"
    android:text="Header Text" />

<Button
    android:id="@+id/btn_right"
    android:layout_width="0dip"
    android:layout_height="match_parent"
    android:layout_weight="1"
    android:text="Right" />

</LinearLayout>

現在、すべての要素が左に浮いているだけで、その理由がわかりません。何が間違っているのでしょうか?

4

1 に答える 1

0

LinerLayout を使用する代わりに、RelativeLayout を使用してみてください。

編集:中央のテキストビューをボタンにストレッチしました(必ずTextViewのmatch_parentを残してください..

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:tools="http://schemas.android.com/tools"
 android:layout_width="match_parent"
 android:layout_height="match_parent">

    <Button android:id="@+id/leftButton" 
            android:layout_alignParentLeft="true"....

    <TextView android:layout_centerHorizontal="true"
              android:layout_toLeftOf="@id/rightButton"
              android:layout_toRightOf="@id/leftButton"  ....

    <Button android:id="@+id/rightButton"
            android:layout_alignParentRight="true"....


</RelativeLayout>
于 2013-05-18T23:54:57.540 に答える