我使用了水平滚动视图,在其中添加了“子视图”。但是在 HZ 滚动视图上,我想安排孩子一些想法,整个屏幕一次显示 3.5 个孩子或 4.5 , 5.5 取决于屏幕大小。child 的一半表示 Scroller 上有更多的 child。
为此,我为子视图使用了不同的尺寸,这取决于密度。但他们仍然是一些在屏幕末尾显示整个孩子的设备。
那么我如何在滚动视图上管理它。请指导我正确的方向。
我使用了水平滚动视图,在其中添加了“子视图”。但是在 HZ 滚动视图上,我想安排孩子一些想法,整个屏幕一次显示 3.5 个孩子或 4.5 , 5.5 取决于屏幕大小。child 的一半表示 Scroller 上有更多的 child。
为此,我为子视图使用了不同的尺寸,这取决于密度。但他们仍然是一些在屏幕末尾显示整个孩子的设备。
那么我如何在滚动视图上管理它。请指导我正确的方向。
为此,我为子视图使用了不同的尺寸,这取决于密度。但他们仍然是一些在屏幕末尾显示整个孩子的设备。
这在很多设备中都无法正常工作。HorizontallScrollView
假设这些橙色子视图的宽度都相同(尽管不是那么重要),并且您只想在第一次布局时才显示一半,您可以简单地在视图上发布Runnable
(在onCreate
方法中)以设置它们宽度到适当的尺寸,以便您做出适当的外观:
public void onCreate(Bundle saved) {
// ... work
horizontalScrollView.post(new Runnable() {
@Override
public void run() {
DisplayMetrics dm = getResources().getDisplayMetrics();
int screenWidth = dm.widthPixels;
// based on this width, the space between the children and their
// widths calculate new widths so you get a half clipped
// children on the right side.
}
});
}
但是,如果你真的想确保用户看到额外的内容,我会避免这种情况并简单地设置一个更强大的指示器HorizontalScrollView
(覆盖它的dispatchDraw
方法并在那里绘制一些东西(也许稍后用 a 隐藏它)) Runnable
.