Клавиатура с сенсорным экраном не отображается правильно

Когда пользователь наводит курсор на поле редактирования под сенсорным экраном, клавиатура не отображается. То, что отображается, это белая область, которая имеет тот же размер, что и клавиатура. Это проблема 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);
        }
    };

1 ответ

Решение

На экране отображения подслой метода переопределялся -

защищенный подпункт void (int maxWidth, int maxHeight) {

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

}

Линия - setExtent(maxWidth,Constants.BACKGROUND_IMAGE.getHeight()); вызывает проблему.

Другие вопросы по тегам