Проблема с прокруткой всплывающего экрана в менеджере (Blackberry) - PullRequest
0 голосов
/ 13 января 2011

Я пытаюсь реализовать всплывающий экран (в основном для экрана EULA), который имеет один менеджер (вертикальный), один RichTextField и одну кнопку.Я хочу, чтобы текст eula отображался в менеджере, и только менеджер должен иметь не всплывающий экран с прокруткой и кнопку, добавляемую после менеджера.

проблема: если текст в RichTextField небольшой, то я вижу текст и кнопку.Но если Текст очень длинный, менеджер прокручивает немного и не видит кнопку вообще.

Вот что я сделал:

class ApplicationEulaScreen extends PopupScreen implements FieldChangeListener
{
    private VerticalFieldManager mainContainer;
    private RichTextField eulaText;
    private ButtonField okButton;

    ApplicationEulaScreen() 
    {
        super(new VerticalFieldManager(VerticalFieldManager.NO_VERTICAL_SCROLL);

        mainContainer = new VerticalFieldManager(VerticalFieldManager.VERTICAL_SCROLL | VERTICAL_SCROLLBAR | USE_ALL_HEIGHT);

        eulaText = new RichTextField("Indicates whether network connectivity is possible. "
        +"A network is unavailable when a persistent or semi-persistent condition  prevents  the possibility of connecting to that network. Examples include "
        +"* The device is out of the coverage area for any network of this type. "
        +"* The device is on a network other than the home network (i.e., roaming), and data roaming has been disabled. "
        +"* The device's radio is turned off, e.g., because airplane mode is enabled. ",  RichTextField.READONLY | RichTextField.USE_TEXT_WIDTH);

        okButton = new ButtonField("Ok", ButtonField.FIELD_HCENTER | FOCUSABLE |  ButtonField.CONSUME_CLICK);
        okButton.setChangeListener(this);

        mainContainer.add(eulaText);
        add(okButton);

    }
}

Нужна помощь в этом.

1 Ответ

0 голосов
/ 17 января 2011

Это потому, что менеджер делегатов (первый VerticalFieldManager) не прокручивается.Он никогда не сместит свой видовой экран для отображения вашего ButtonField.

Вы пытались удалить mainContainer и просто добавить RichTextField непосредственно на всплывающий экран?

...