为什么在滑动CN1应用程序时抬起手指,为什么我的侧边菜单会回退?

问题描述 投票:1回答:1

在我的Codenameone应用程序中,我已经建立了一个侧面菜单,但是我有2个外观问题。

  1. [当我从左侧滑动并在屏幕空间中抬起手指时,距离菜单完成的距离略远一些,菜单会弹回。如果我在菜单将扩展到的空间中举起手指,它不会恢复原状。滑动时是否可以使侧面菜单停留在屏幕上?
  2. 我的主页上有一个垂直滚动的容器。当我打开侧面菜单时,它不会禁用我的主页,因此我仍然可以通过将手指移到菜单右侧的空间来滚动我的主页容器。打开菜单后,默认情况下我们是否可以禁用主页内容?

对于参考,我的菜单沿用this tutorial的设计,下面是一个非常简单的示例:

public void start() {
    if (current != null) {
        current.show();
        return;
    }
    Form hi = new Form("Hi World", BoxLayout.y());
    hi.add(new Label("Hi World"));

    Toolbar t = new Toolbar();
    hi.setToolbar(t);
    t.setTitle("Title");
    Label logoLabel = new Label("");
    logoLabel.setTextPosition(Label.BOTTOM);
    logoLabel.setText("label text here");
    t.addComponentToSideMenu(logoLabel);

    hi.show();
}

谢谢

codenameone
1个回答
0
投票

关闭点似乎在此处被硬编码到屏幕的四分之一:https://github.com/codenameone/CodenameOne/blob/master/CodenameOne/src/com/codename1/ui/Toolbar.java#L1380

代码中可能有其他要实现此逻辑的点。可能可以更改它,以使该逻辑可以通过主题常量进行配置。但是现在这是硬编码的。

© www.soinside.com 2019 - 2024. All rights reserved.