【问题标题】:Hide/show tabs depending on when the virtual keyboard is visible根据虚拟键盘何时可见隐藏/显示选项卡
【发布时间】:2019-04-18 10:10:44
【问题描述】:

有人可以帮忙吗?当虚拟键盘出现/消失时,我试图隐藏/显示我的标签。我可以使用下面的代码来实现这一点,具体取决于字段是否具有焦点,但是如果用户按下硬件后退按钮(以移除键盘),这不会从字段中移除焦点,因此选项卡将不会再次显示。理想情况下,我想要一种根据虚拟键盘显示和隐藏的方法。使用 Netbeans IDE 8.2 代号一插件版本 6.0。也许我的做法是错误的,任何建议都将不胜感激。

t_TelFind.addFocusListener(new FocusListener()
        {
        @Override
        public void focusGained(final Component t_TelFind)
        {
            DTOTabs.hideTabs();
        }

        @Override
        public void focusLost(final Component t_TelFind)
        {
            DTOTabs.showTabs();
        }
    });

         t_TelDelete.addFocusListener(new FocusListener()
        {
        @Override
        public void focusGained(final Component t_TelDelete)
        {
            DTOTabs.hideTabs();
        }

        @Override
        public void focusLost(final Component t_TelDelete)
        {
            DTOTabs.showTabs();
        }
    });

【问题讨论】:

    标签: codenameone


    【解决方案1】:

    即使在本机中也很难检测虚拟键盘。我们有一些代码可以做到这一点,并将其作为 Display 中的 API 公开,特别是 addVirtualKeyboardListener。甚至该方法也明确声明 API 在某些情况下可能会失败。

    我建议使用较小的标签或使用创造性的方式,例如当您向下滚动时折叠标签的 whatsapp 方法。

    【讨论】:

    • 感谢谢的支持。我坚持使用 focusGained 和 focusLost,添加一个 done 监听器,然后将焦点设置在其他地方。不幸的是,即使按下完成按钮,该字段也不会失去焦点。不是最好的解决方案。我现在已经通过使容器可滚动来解决我的问题,因此我的字段不再受阻。 WhatsApp 方法将来可能会有用,谢谢!
    猜你喜欢
    • 2020-06-08
    • 2023-02-02
    • 2010-12-31
    • 1970-01-01
    • 1970-01-01
    • 2013-12-20
    • 1970-01-01
    • 2015-03-29
    • 1970-01-01
    相关资源
    最近更新 更多