艦これメモ+開発メモ+その他若干

ゲーム「艦隊これくしょん」の自分用メモとそれに基づいた簡単な記事、開発関連の自分用メモ、旅行時のメモなど

AndroidのLayout

暇なんだけど業務無関係な事をするわけにもいかないので、Android Studio いじってみてます。
で、ちょっと入門書読んでみて「すげーAWTやSwingに似てるなー…」と思ったんだけど、AWTやSwingやSWTとは差を感じるので、とりあえず差異と概要に関する自分用メモ。

FrameLayout

パーツを左上に配置・表示するレイアウト。 複数のViewを与えると重ねて表示する。

LinearLauout

要素を「縦」または「横」に延々と並べるレイアウト。
AWT の FlowLayout のつもりで使えば良い…のかな。

RelativeLayout

Viewを配置するさいに相対指定したいさいに使うレイアウト。

TableLaout

AWTのGridLayoutとほぼ同じような機能。
AWTのGridLayoutと違い、列をまたいで(複数セルを消費して)配置することもできる。
行をまたいで配置はできないのは同じ。

GridLayout

SwingのGridBagLayoutみたいな事をしたい場合に使うっぽい。
AWTのGridLayoutより相当高機能。
列をまたぐことも、行をまたぐこともできる。
Android4.0以降。
Swing の GridBagLayoutは高性能だけど、GridBagConstraints作って fill や grids や grid width を指定して setConstrationsしてからさっきのGridBagConstraintsを使いまわして値を上書きして……ってのは正直煩雑すぎるしダサいので(というか黎明期のJavaGUI系の仕組みは大抵ダサい)、同じような機能をもっとシンプルに使える Android の GridLayout は気に入った。