の下にボタンを表示したいListView
。問題は、ListView
拡張された場合(アイテムが追加された場合...)、ボタンが画面から押し出されることです。
私が試したLinearLayout
(で提案されているよう重みを持つの:なぜ何のmaxHeightは、ビューのために存在しない?アンドロイド、私は重みが間違っていましたか、それは単に仕事をしませんでしたどちらか)。
また、を使用するためのヒントをどこかで見つけましたRelativeLayout
。次にListView
、android:layout_above
paramを使用してボタンの上に設定します。
これの問題は、後でボタンを配置する方法がわからないことです。私が見つけた例では、の下のビューListView
はを使用して調整されましたがandroid:layout_alignParentBottom
、ボタンを画面の下部に固定したくありません。
setHeightメソッドの使用と必要なスペースの計算以外のアイデアはありますか?
編集: 私は多くの有用な答えを得ました。
bigstoneとuser639183のソリューションはほぼ完全に機能しました。ただし、ボタンの下部に余分なパディング/マージンを追加する必要がありました。ボタンが画面の半分まで押し出されるためです(その後停止されます)。
画面下部にボタンを固定したい場合は、相対レイアウトのみでのAdiniaの回答で問題ありません。それは私が意図したものではありませんが、それでも他の人に役立つかもしれません。
AngeloSのソリューションは、私が最後に選択したもので、私が望む効果を生み出しただけです。ただし、
LinearLayout
ボタンの周囲に2つの小さな変更を加えました。まず、レイアウトに絶対値を入れたくなかったので、に変更
android:layout_height="45px"
しましたwrap_content
。これも問題なく機能します。次に、ボタンを水平方向の中央に配置したいので、垂直方向のみでサポートされているため
LinearLayout
、android:orientation = "horizontal"を "vertical"に変更しました。
AngeloSはまた、彼の最初の投稿
android:layout_weight="0.1"
で、LinearLayout
周囲のparamがListView
効果を持っているかどうかはわからないと述べました。私は試してみましたが実際にあります!なければ、ボタンは再び画面から押し出されます。
android:layout_alignParentBottom="true"
。しかし、明確にするために、アイテムが少ないときにボタンをListViewの下部に接続したままにしますか?はいの場合は、リッチの発言をご覧ください。