我正在编写一个具有垂直父级LinearLayout的简单android应用。小时候,我想要一个ScrollView,两个编辑文本,然后一个按钮。
scrollView内部有许多按钮。当我在其中放置许多按钮时,ScollView占据了整个屏幕。我仍然希望EditTexts和final按钮可见。
pandas.concat
我想知道解决方案的编程方式。
答案 0 :(得分:1)
更改此行:
mainLayout.addView(scrollView);
为此:
LinearLayout.LayoutParams params = new LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, 0);
params.weight = 1;
mainLayout.addView(scrollView, params);
LinearLayout支持 weight 的概念,该概念将根据父级LinearLayout中可用的空间来“拉伸”视图。
在这种情况下,您使ScrollView
的高度为零像素,同时使两个EditTexts和Submit Button保持其正常大小。这不会填满LinearLayout,因此将应用权重。所有具有权重的视图都会根据它们的权重之比分配额外的空间,但是这里我们只有一个具有权重的视图,因此它只会获得所有的额外空间。
这意味着您的EditTexts和Submit Button将始终可见,并且ScrollView将获得任何剩余的空间,无论屏幕有多大。
答案 1 :(得分:-1)
解决方案是添加此... scrollView.getLayoutParams()。height = 200;我从这篇帖子Set ImageView width and height programmatically?
中得到的