我需要一个包含4个按钮的垂直ScrollView。 每个按钮应该是电话的大小。
这样的事情:
<ScrollView
android:id="@+id/scroll_view"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<Button
android:layout_width="fill_parent"
android:layout_height="match_parent"
android:text="First Content."
android:textSize="50sp"/>
<Button
android:layout_width="fill_parent"
android:layout_height="match_parent"
android:text="Second Content."
android:textSize="50dip"/>
</LinearLayout>
</ScrollView>
我尝试了很多选项,但是没有办法解决这个问题。
答案 0 :(得分:1)
所有你必须做一个动态布局
在xml中保留布局
<LinearLayout
android:id="@+id/lnr_layout_container"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
</LinearLayout>
然后在你的activity / fragment java文件
中LinearLayout lnLayoutContainer=(LinearLayout)findViewById(R.id.lnr_layout_container);
计算设备的高度
DisplayMetrics displayMetrics = context.getResources().getDisplayMetrics();
int height = displayMetrics.heightPixels;
现在给布局容器充气并添加按钮
for(int i=0;i<4;i++)
{
Button btnView= new Button(context);
<set your button properties and listener here>
LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, height);
layoutParams.weight = 1;
btnView.setLayoutParams(layoutParams);
lnLayoutContainer.addView(txtViewChar);
}