我需要绘制两倍于屏幕宽度的UI,在HorizontalScrollView中滚动。
伪代码就是这样:
<HorizontalScrollView width=device_screen>
<myUI width=device_screen*2>...</myUI>
</HorizontalScrollView>
我不想为市场上的每个设备设置px / dp的精确宽度,但我没有找到一种方法来为任何设备相对于其父设备声明性地设置视图宽度。
有什么办法吗?
答案 0 :(得分:1)
您可以使用WindowManager类获取当前显示信息,乘以2并将其指定给视图的宽度。像这样:
WindowManager wm = getWindowManager();
Display d = wm.getDefaultDisplay();
int view_width = 2*d.getWidth();
答案 1 :(得分:0)
这与this one的问题相同。有两个开源库可以实现您需要的最佳答案。它允许您根据需要添加任意数量的水平页面视图。
但是,如果您不需要视图并且可以使用Fragments,则应使用ViewFliper等本机实现。