すみません、androidアプリを勉強している者です。
<HorizontalScrollView>を使って横スクロールするボタンを作ろうと思っています。
ボタンを、縦にmatch_palentのようにしていっぱいに並べたかったのですが、挙動がwrap_contentみたいになって下に空白が出来てしまいます。
ググったら、
android:fillViewport="true"
をつけると上手くいくみたいなのが書いてあったのですが、上手くいきません...
こちらがコードです。
xml
1<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 2 android:layout_width="fill_parent" 3 android:layout_height="fill_parent" 4 android:orientation="vertical"> 5 6 <LinearLayout 7 android:layout_width="match_parent" 8 android:layout_height="wrap_content" 9 android:gravity="center"> 10 <TextView 11 android:text="@string/select_title" 12 android:textSize="20dp" 13 android:layout_width="wrap_content" 14 android:layout_height="wrap_content"/> 15 </LinearLayout> 16 17 <HorizontalScrollView 18 android:id="@+id/selectButtons" 19 android:layout_width="match_parent" 20 android:layout_height="match_parent" 21 android:layout_weight="1" 22 android:fillViewport="true"> 23 <LinearLayout 24 android:id="@+id/selectButtonLayout" 25 android:layout_width="wrap_content" 26 android:layout_height="match_parent" 27 android:orientation="horizontal"> 28 </LinearLayout> 29 </HorizontalScrollView> 30 31 <LinearLayout 32 android:layout_width="match_parent" 33 android:layout_height="wrap_content" 34 android:orientation="horizontal"> 35 <Button 36 android:id="@+id/backButton" 37 android:text="@string/back" 38 android:layout_width="match_parent" 39 android:layout_height="wrap_content" 40 android:layout_weight="1"/> 41 <Button 42 android:id="@+id/description" 43 android:text="@string/description" 44 android:layout_width="match_parent" 45 android:layout_height="wrap_content" 46 android:layout_weight="1"/> 47 </LinearLayout> 48 49</LinearLayout>
ボタンは、javaから直接配置しております。
java
1LinearLayout selectScreen = (LinearLayout) findViewById(R.id.selectButtonLayout); 2 for(int i=0;i<5;i++){ 3 LinearLayout columnButtons = new LinearLayout(this); 4 columnButtons.setOrientation(LinearLayout.VERTICAL); 5 for(int j=0;j<4;j++){ 6 Button button = new Button(this); 7 button.setText("stage"+(j+i*4+1)); 8 button.setLayoutParams(new LinearLayout.LayoutParams( 9 LinearLayout.LayoutParams.MATCH_PARENT, 10 LinearLayout.LayoutParams.MATCH_PARENT)); 11 button.setBackgroundColor(Color.rgb(169,206,236)); 12 MarginLayoutParams lp = (MarginLayoutParams) button.getLayoutParams(); 13 lp.setMargins(10,10,10,10); 14 button.setLayoutParams(lp); 15 columnButtons.addView(button); 16 } 17 selectScreen.addView(columnButtons); 18 }
何か、こうした方がいいということを知っている方がいれば教えてください。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。