触摸屏键盘无法正确显示

发布于 2024-11-09 16:34:35 字数 912 浏览 0 评论 0原文

当用户将鼠标悬停在触摸屏键盘下方的编辑字段上时,不会显示。显示的是与键盘大小相同的白色区域。这是 BlackBerry Torch 上的问题。我希望使用下面的代码触摸屏键盘能够正确显示?

BasicEditField nameField = 
    new BasicEditField(
        "  "+Local.getInfo8()+ " : ", "", 100, BasicEditField.FILTER_DEFAULT)
    {
        private int iRectX = getFont().getAdvance(getLabel());
        private int iRectWidth = backgroundButtonBitmap.getWidth() - iRectX - 4;
        public int getPreferredHeight() {
            return backgroundButtonBitmap.getHeight() / 2;
        }

        public void layout(int width, int height) {
            //setExtent(width, getPreferredHeight());
            super.layout(width, getPreferredHeight());
        }

        public void paint(Graphics g) {
            g.setColor(Color.BLACK);
            g.setBackgroundColor(Color.WHITE);
            //g.drawRect(iRectX, 0, iRectWidth, 20);
            super.paint(g);
        }
    };

When the user hovers over editfield below the touch screen keyboard does not display. What is displayed is a white area that is same size as keyboard. This is an issue on BlackBerry Torch. I would expect the touch screen keyboard to appear correctly using below code ?

BasicEditField nameField = 
    new BasicEditField(
        "  "+Local.getInfo8()+ " : ", "", 100, BasicEditField.FILTER_DEFAULT)
    {
        private int iRectX = getFont().getAdvance(getLabel());
        private int iRectWidth = backgroundButtonBitmap.getWidth() - iRectX - 4;
        public int getPreferredHeight() {
            return backgroundButtonBitmap.getHeight() / 2;
        }

        public void layout(int width, int height) {
            //setExtent(width, getPreferredHeight());
            super.layout(width, getPreferredHeight());
        }

        public void paint(Graphics g) {
            g.setColor(Color.BLACK);
            g.setBackgroundColor(Color.WHITE);
            //g.drawRect(iRectX, 0, iRectWidth, 20);
            super.paint(g);
        }
    };

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

如歌彻婉言 2024-11-16 16:34:35

在显示屏幕上,方法 sublayout 被重写 -

protected void sublayout( int maxWidth, int maxHeight ) {

super.sublayout( maxWidth, maxHeight );
setExtent(maxWidth,Constants.BACKGROUND_IMAGE.getHeight());  

}

行 - setExtent(maxWidth,Constants.BACKGROUND_IMAGE.getHeight()); 导致问题。

On the display screen, the method sublayout was being overriden -

protected void sublayout( int maxWidth, int maxHeight ) {

super.sublayout( maxWidth, maxHeight );
setExtent(maxWidth,Constants.BACKGROUND_IMAGE.getHeight());  

}

The line - setExtent(maxWidth,Constants.BACKGROUND_IMAGE.getHeight()); is causing the issue.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文