2012-10-27 11 views
6

2つのフォームウィジェット(たとえば2つのボタン)で簡単なレイアウトを作成する必要があります。最初のレイアウトは、親レイアウトの使用可能な幅をすべて満たす必要があり、2番目のレイアウトは固定サイズでなければなりません。 - 私は二番目に表示されていないenter image description hereAndroid:この単純なレイアウトを作成するには?

私は最初のウィジェットにFILL_PARENTを設定した場合:私は必要なものだ

。レイアウトのビュー領域から吹き飛ばすだけです。これを修正する方法はわかりません...

答えて

14

これを行う最も簡単な方法は、LinearLayoutlayout_weightを使用しています。最初のTextViewの幅が"0dp"であることに注意してください。これは "私を無視してそのウェイトを使用する"という意味です。重みは任意の数にすることができます。唯一の重み付けされたビューであるため、利用可能な領域を埋めるために拡大されます。

<LinearLayout 
    android:orientation="horizontal" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    > 
    <TextView 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     /> 
    <TextView 
     android:layout_width="25dp" 
     android:layout_height="wrap_content" 
     /> 
</LinearLayout> 
+0

ありがとうございます!それはまさに私が必要なものです! – JavaRunner

1

これは、RelativeLayoutまたはFrameLayoutで実現できます。

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

    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:layout_marginBottom="5dp" 
     android:layout_marginTop="5dp" 
     android:layout_marginLeft="5dp" 
     android:background="#ccccee" 
     android:text="A label. I need to fill all available width." /> 

    <TextView 
     android:layout_width="20dp" 
     android:layout_height="wrap_content" 
     android:layout_alignParentRight="true" 
     android:layout_marginBottom="5dp" 
     android:layout_marginTop="5dp" 
     android:paddingRight="5dp" 
     android:background="#aaddee" 
     android:text=">>" /> 

</RelativeLayout> 

How the layout looks

関連する問題