我正在尝试使用BoxLayout创建一个具有较大数量(> 20或超出屏幕高度的数字)作为可滚动列表的项目的容器,它可以工作(即,您可以看到内容在上下移动时一次滑动),但尝试查看列表底部的项目始终会导致内容指针返回列表顶部。期望向下滚动列表将视图锁定到滚动动作结束的位置。我也尝试使用TableLayout,但结果是相同的。有任何想法吗?下面的主窗体还设置了setScrollableY()。
int rows = 30;
Form hi = new Form("Test",new BoxLayout(BoxLayout.Y_AXIS));
hi.setScrollableY(true);
Container contents = new Container(new BoxLayout(BoxLayout.Y_AXIS));
contents.setScrollableY(true);
hi.add(contents);
for (int i = 0 ; i < rows;i++)
{
Label type = new Label("ROW+"+i);
type.setName(i+"");
type.setTextPosition(Component.TOP);
contents.addComponent(type);
}
mainform.addComponent(hi);
答案 0 :(得分:0)
删除此行:
contents.setScrollableY(true);
您只能在一个层次结构中使用一个可滚动容器,并且选择了Form
。嵌套可滚动对象时,手势被其中之一选中,这成为一个问题。不同于可以精致地单击特定滚动条的桌面,在触摸设备中,您不能选择特定容器进行滚动。