2009-12-16 4 views
1

Я использую следующее глобальное диалоговое окно, чтобы отобразить сообщение после выхода из приложения, и мое приложение уведомлено о проверке некоторых задач.BlackBerry - Глобальные модификации экрана?

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); 
} 

Я хочу, чтобы добавить Название этого диалога, как мой App Название, и какое-то сообщение (уже я даю, что ...) и удалить возглас или любой другой значок по умолчанию дал этот диалог. Я не хочу ЛЮБОЙ ИКОН, хотя в этом диалоге.

Может кто-нибудь, пожалуйста, предложите мне, если вы его использовали?

спасибо. Цените, если вы можете помочь мне в этом.

ответ

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); 
     } 
    } 
} 

ОБНОВЛЕНО согласно Фернандо комментарий

+0

WoW! Отличная помощь. Прекрасно работает! У меня есть еще один вопрос: если я хочу показать диалог и включить экран устройства, если экран устройства уже находится в состоянии ВЫКЛ, возможно ли это? – Getsy

+0

Добро пожаловать! Разместите отдельный вопрос о показе, поэтому он будет выделен и проиндексирован поисковыми машинами :)! –

+1

мне пришлось изменить его ... вместо: экрана Screen = новый GlobalDialog (заголовок, текст) я использовал: экрана GlobalDialog = новый GlobalDialog (название, текст) В противном случае i – 2011-02-02 08:19:56

Смежные вопросы