Blackberry Custom Фон свитков VFM с полем списка? - PullRequest
1 голос
/ 10 июля 2009

Я хочу "исправить" фон, пока прокручивается только ListFields.

Текущая проблема:

alt text

Прокрутка вниз (окружающая рамка должна двигаться вместе со списком)

alt text

Соответствующий код для VerticalFieldManager

VerticalFieldManager _bottom_box = new VerticalFieldManager(Field.FIELD_HCENTER | Field.FIELD_VCENTER | VerticalFieldManager.VERTICAL_SCROLL | Field.USE_ALL_HEIGHT)
        {
            protected void sublayout(int maxWidth, int maxHeight)
            {
                super.sublayout(maxWidth, maxHeight);
                setExtent(maxWidth - 6, maxHeight - 3);
            }
            protected void paint(Graphics graphics)
            {
                graphics.clear();
                graphics.setColor(Color.WHITE);
                graphics.fillRect(0, 0, (this.getWidth()), (this.getHeight()));
                graphics.setColor(color_computacenter_light_blue);
                graphics.drawRect(0, 0, (this.getWidth()), (this.getHeight()));
                super.paint(graphics);
            }
        };

Есть идеи, как это исправить? Спасибо

1 Ответ

2 голосов
/ 11 июля 2009

Немного сложно узнать без дополнительной информации о структуре этого экрана, но основная причина связана с разницей между видимой высотой на экране (заданной getHeight ()) и виртуальной высотой. Вы рисуете в виртуальный видовой экран с этим методом рисования, поэтому я думаю, что этот твик должен исправить вещи:

                    protected void paint(Graphics graphics)
                    {
                            graphics.clear();
                            graphics.setColor(Color.WHITE);
                            graphics.fillRect(0, graphics.getClippingRect().y, (this.getWidth()), (this.getHeight()));
                            graphics.setColor(color_computacenter_light_blue);
                            graphics.drawRect(0, graphics.getClippingRect().y, (this.getWidth()), (this.getHeight()));
                            super.paint(graphics);
                    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...