« enchantMOON(5) | トップページ | アイコンが2つ表示されちゃったメモ »

2013.09.07

ボタンを等間隔に表示するときにハマった事のメモ

横にボタンを等間隔に画面いっぱいに並べたいとき、各ボタンに、横幅方向に

LinearLayout.LayoutParams.MATCH_PARENT

を指定すれば、勝手に等間隔に並ぶだろうと思ってたら、そうは行かなかった。
実行してみると、1つ目のボタンが横幅いっぱいに表示されてしまう。
解決するには、weightを指定しないといけなかった。

weightって、デフォルトでは自動で割り振られるわけじゃなかったんですね。
という訳で以下の様な感じにしたらうまく行った。

Button button1 = new Button(this); Button button2 = new Button(this); LinearLayout buttonLayout = new LinearLayout(this); buttonLayout.setOrientation(LinearLayout.HORIZONTAL); buttonLayout.setLayoutParams(new LinearLayout.LayoutParams( LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT));

buttonLayout.addView(button1 , new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.MATCH_PARENT,
LinearLayout.LayoutParams.WRAP_CONTENT,1));
buttonLayout.addView(button2 , new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.MATCH_PARENT,
LinearLayout.LayoutParams.WRAP_CONTENT,1));


« enchantMOON(5) | トップページ | アイコンが2つ表示されちゃったメモ »

「android開発メモ」カテゴリの記事

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/12074/58533708

この記事へのトラックバック一覧です: ボタンを等間隔に表示するときにハマった事のメモ:

« enchantMOON(5) | トップページ | アイコンが2つ表示されちゃったメモ »