Приложението Blackberry все още работи

Разработвам просто приложение за blackberry с eclipse. Току-що настроих ListField с обратно извикване и след това приложението ми не иска да спре да работи, след като го затворя. Едно много досадно последствие е, че трябва да рестартирам симулатора всеки път, когато искам да тествам приложението си.

public class MyMainScreen extends MainScreen {
    private ListField lfMessage;            // UI list of messages
    // Constructor
    public MyMainScreen() {
        // set the title
        setTitle("My App");
        ListField lfMessage;
        lfMessage = new ListField();
        lfMessage.setEmptyString("Nothing to see here", DrawStyle.LEFT);
        lfMessage.setSize(5);
        lfMessage.setCallback(new MessageListCallBack());
        add(lfMessage);

    }

    // Menu item "Close"
    private MenuItem closeItem = new MenuItem("Close", 110, 10) {
        public void run() {
        lfMessage.setCallback(null);
        lfMessage = null;


        onClose();
        }
    };

person poiuytrez    schedule 29.09.2009    source източник


Отговори (3)


опитайте това, просто добавете този метод към вашата програма и той ще направи магията

public boolean onClose()
{
       System.exit(0);
       return true;
}

Това със сигурност ще работи.

person user188391    schedule 14.10.2009

Опитвали ли сте System.exit( 0) ?

person Maksym Gontar    schedule 29.09.2009

Поведението по подразбиране на onClose() е да извика onSavePrompt(), ако екранът е мръсен, и да извика close(), ако е успешно. Директното извикване на close() ще затвори екрана без подкана, извикването на setDirty() ще ви позволи да посочите състоянието на мръсния флаг или, както спомена Coldice, извикването на System.exit(0) ще прекрати програмата.

person Richard    schedule 29.09.2009