黑莓跳跃的卷轴

时间:2011-12-14 01:23:25

标签: blackberry scroll

我在黑莓应用程序上进行垂直滚动时遇到问题。 它在触摸屏上运行得很好,但是当使用触控板滚动时,它会从顶部位置跳到底部位置。

有人有过类似的问题吗?知道我能尝试什么吗?

以下是我的代码中的代码段。我有一个静态背景图像,字段在其上滚动:

vertical_main = new VerticalFieldManager(USE_ALL_WIDTH |NO_VERTICAL_SCROLL |USE_ALL_HEIGHT);
vertical_AllTags=new VerticalFieldManager(USE_ALL_WIDTH | VERTICAL_SCROLL);
// i then add all the fields to vertical_AllTags
vertical_main.add(vertical_AllTags);
vertical_main.invalidate();
add(vertical_main);

提前感谢您的帮助

编辑: 给每个领域重点的建议是正确的。唯一需要做的其他部分是当你为一个字段覆盖onFocus方法时,你需要调用super()函数,以便仍然调用onFocus方法的所有其他正常部分:

protected void onFocus(int direction) {
    text_select=true;
    invalidate();
    super.onFocus(direction);
}

protected void onUnfocus() {
    text_select=false;
    invalidate();
    super.onUnfocus();
}

非常感谢你。

3 个答案:

答案 0 :(得分:1)

这种情况发生在TrackWheel Scrolling中,它会向上滚动到下一个聚焦字段。我认为你不会在 vertical_AllTags 之间给予任何关注。

您可以使用 NullField()类解决此问题。像...

add(new NullField(Field.FOCUSABLE))

当您添加添加(新NullField(Field.FOCUSABLE)); 时,您将获得您不知道的空焦点。您可以浏览触摸屏等所有字段。

答案 1 :(得分:1)

这是初学者非接触式设计的常见问题。 如果你想逐字段滚动,有两种方法

  

1)你需要把焦点放在所有领域,然后它将来到现场   现场焦点下载

另一种方式意味着你不需要专注于每一个领域

  

2)只需在每个字段后添加NullField,并将焦点放在所有字段上   NullFields然后你的轨迹球将按字段显示你的屏幕

答案 2 :(得分:0)

您可以通过添加两个垂直字段管理器来解决该问题。请查看此post

中的代码