我正在使用带按钮的横向视图滚动视图。现在我想在每种类型的移动屏幕上一次只能显示3个按钮。怎么可能? 我正在使用以下代码。
<HorizontalScrollView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="50dp" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button1" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button2" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button3" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button4" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button5" />
</LinearLayout>
</HorizontalScrollView>
答案 0 :(得分:0)
在xml布局中不可能,因为你没有滚动视图的宽度但是... 您可以通过以下代码获取设备宽度像素,然后将其除以3:
DisplayMetrics display;
display = this.getResources().getDisplayMetrics();
int width = display.widthPixels;
当您获得设备宽度像素时,将其设置为3并设置为按钮:
btn.setWidth (width / 3);
希望它有用......
答案 1 :(得分:0)
我认为您正在寻找类似this.
的内容您可以将按钮的大小设置为屏幕的1/3(具有布局权重),我认为按钮的其余部分不是“屏幕外”,因此您可以通过滚动显示它们。 我不能告诉你代码是如何看起来像因为我不是一个Android开发人员,但我曾经做过一次,它就是这样的。
我希望它可以帮助您找到确切的解决方案!
答案 2 :(得分:0)
很难,因为HorizontalScrollView不允许你这样做。
如果你使用HorizontalScrollView然后给这个按钮一个weightSum,它就不会被应用。
所以我想说,它取决于屏幕尺寸。如果你修复它而不是其他的那个。