1

在用户退出应用程序并且我的应用程序通知检查某些任务后,我使用以下全局对话框显示一些消息。

synchronized( UiApplication.getEventLock() ) {
    UiEngine ui = Ui.getUiEngine();
    Screen screen = new Dialog(Dialog.D_OK, "My Message",
        Dialog.OK, Bitmap.getPredefinedBitmap(Bitmap.EXCLAMATION), 
        Manager.VERTICAL_SCROLL);
    ui.pushGlobalScreen(screen, 1, UiEngine.GLOBAL_QUEUE);
}

我想将此对话框的标题添加为我的应用程序标题,并添加一些消息(我已经给出...)并删除感叹号或任何默认图标已提供给此对话框。尽管在此对话框中,我不想要任何图标。

如果您使用过,有人可以建议我吗?

谢谢你。感谢您能帮助我解决这个问题。

4

1 回答 1

4

Dialog类中没有标题,我建议使用PopupScreen扩展:
alt text http://img187.imageshack.us/img187/6245/9000.jpg

class GlobalDialog extends PopupScreen implements FieldChangeListener {
    ButtonField mOKButton = new ButtonField("OK", ButtonField.CONSUME_CLICK
            | FIELD_HCENTER);

    public GlobalDialog(String title, String text) {
        super(new VerticalFieldManager());
        add(new LabelField(title));
        add(new SeparatorField(SeparatorField.LINE_HORIZONTAL));
        add(new LabelField(text, DrawStyle.HCENTER));
        mOKButton.setChangeListener(this);
        add(mOKButton);
    }

    public void fieldChanged(Field field, int context) {
        if (mOKButton == field)
            close();
    }
}

使用示例:

class Scr extends MainScreen {
    public Scr() {
        synchronized (UiApplication.getEventLock()) {
            UiEngine ui = Ui.getUiEngine();

            String title = "Dialog Title";
            String text = "Lorem ipsum dolor sit amet, consectetur "
                    + "adipiscing elit. Donec venenatis " 
                    + "condimentum urna, non accumsan magna "
                    + "ultrices ut. Morbi fringilla ";
            GlobalDialog screen = new GlobalDialog(title, text);

            ui.pushGlobalScreen(screen, 1, UiEngine.GLOBAL_QUEUE);
        }
    }
}

根据费尔南多评论更新

于 2009-12-16T16:47:26.943 回答