【Android】GridLayoutでRowSpanやColumnSpanが効かない時はlayout_gravityを設定する
ドリリウムは移転しました。
約5秒後に自動的にリダイレクトします。
GridLayoutを使ってグリッドを連結する際にColumnSpanやRowSpanを指定しても上手く結合できませんでした。
上手くいかなかった際のコードが以下の通りです。
<Button
android:id="@+id/buttonEqual"
android:layout_width="64dp"
android:layout_height="64dp"
android:text="="
app:layout_rowSpan="2"
app:layout_column="3"
app:layout_row="2" />
調べてみた結果、layout_gravityという要素で結合したい方向を指定すると上手く動作することがわかりました。
<Button
android:id="@+id/buttonEqual"
android:layout_width="64dp"
android:layout_height="64dp"
android:text="="
app:layout_rowSpan="2"
app:layout_column="3"
app:layout_gravity="fill_vertical"
app:layout_row="2" />
縦方向に結合するならfill_vertical、横方向に結合するならfill_horizonalを指定すれば良いみたいです。