3
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Androidで固定幅や固定高さの要素を置いて、残り全部を別要素で占有させたい

Last updated at Posted at 2018-03-23

多分死ぬほど既出で、みんな知ってて、自分自身でも何度もやったことあるレイアウトなんだけど、今まさにどうやっても出来ない!
ってなる。なった。
なったときにどう検索してもドンピシャな解法が出てこなかった。
のでメモ。

なんか固定値の高さをもつボタンやナビゲーションや画像を置いた上で、残りの領域にListViewとかRecyclerViewとかとかを配置したい。
RelativeLayoutを使ったりとか色々試したんだけど、どうしても要素がはみ出たり重なったりする。

結局、LinearLayoutで要素を並べて、固定幅・固定高さじゃない方、残った高さをフルに使いたい方にlayout_weightを指定して占有させることで目的を達成できた。

 <LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

   <LinearLayout
      android:layout_width="match_parent"
      android:layout_height="0dp"
      android:layout_weight="1"
      android:orientation="vertical">

      <!-- なんかいろんな要素 -->
      <!-- ListViewとかを含む -->
  </LinearLayout>

  <Button
      android:layout_width="match_parent"
      android:layout_height="55dp"
      android:layout_gravity="bottom"
      android:text="button" />

</LinearLayout>

(いまどきConstraintLayoutでやらないのもどうなのかね)
(まあいいじゃん)

3
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?