2012-03-15 18 views
0

私はListViewを使用している状況を抱えており、絶対高さを設定して100dpとすると、項目が範囲外であってもリストビューがunrollableになることがわかりました。しかし、これはwrap_contentとして高さを設定しても起こりませんが、アイテムリストが画面サイズよりも長い場合は、これが画面全体を埋める必要があります。私はListViewが画面の下部にあるコントロールバーの上にとどまる必要があります。今absolute height generate unrollable ListView

<RelativeLayout > 
<ListView 
     android:id="@+id/eventitems" 
     android:layout_width="fill_parent" 
     android:layout_height="100dp" 
     android:layout_alignParentLeft="true"/> 
<LinearLayout 
     android:id="@+id/widget53" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentTop="true" > 
     <Button /> 
     <EditText /> 
     <Button /> 
    </LinearLayout> 
</RelativeLayout> 

項目リストが十分に長い場合、一番下の項目は表示されませんし、ListViewコントロールをロールバックすることはできません。 wrap_contentの場合、最新のアイテムがLinearLayoutの下に表示されます。

答えて

1
<RelativeLayout > 
    <ListView 
     android:id="@+id/eventitems" 
     android:layout_width="fill_parent" 
     android:layout_height="warp_content" 
     android:layout_alignParentLeft="true" 
     android:layout_above="@+id/widget53"/> 
    <LinearLayout 
     android:id="@id/widget53" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentBottom="true" 
     > 
     <Button /> 
     <EditText /> 
     <Button /> 
    </LinearLayout> 
</RelativeLayout> 

私がリストビューにlayout_above属性を追加し、あなたのLinearLayoutからparenttopを削除し、parentbottom属性が追加されていることに注意してください。これを試してみてください。

+0

ありがとう、私はこれを試しています。 – panda