1

quand je suis appuyant sur le bouton de retour d'un écran pop s'affiche qui montre trois boutons enregistrer, annuler et annuler le bouton je ne veux pas que cet écran sauté vers le haut. Est-ce possible.avec le bouton retour

Merci à l'avance

+3

http://stackoverflow.com/questions/2461403/blackberry-disable-save-option-in-basiceditfield/2461453#2461453 – Vivart

Répondre

2

Le comportement par défaut du bouton de retour est d'enregistrer les modifications pour les écrans sales. Réécrivez la méthode onClose() pour remplacer le comportement par défaut.

public boolean onClose() { 
     int choice = Dialog.ask(Dialog.D_YES_NO, "¿Do you want to exit?", Dialog.YES); 

     if (choice == Dialog.YES) { 
      //write a close() routine to exit 
      close(); 
     } 
     return true; 
    } 

Vous renvoyez true car vous avez géré l'événement ESC sur le bouton. Passez en revue les documents de classe Screen.

Vous pouvez également modifier le comportement par défaut du bouton ESC réécriture de la méthode KeyChar comme suit:

protected boolean keyChar(char character, int status, int time) { 
     if (character == Keypad.KEY_ESCAPE) { 
      onClose(); 
      return true; 
     } 
     return super.keyChar(character, status, time); 
    } 

close() devrait être somenthing comme:

public void close() { 
    System.exit(0); 
} 
1

Remplacer onClose() méthode comme ceci:

public boolean onClose() { 
    close(); 
    return true; 
} 

vous n'obtiendrez pas ce message d'alerte ennuyeux.

1

Passer l'invite de sauvegarde avec elle

protected boolean onSavePrompt() { 
    return false; 
} 
2

Remplacer la méthode onSavePrompt. Alors cet écran ne viendra pas. En fait cet écran contextuel viendra seulement quand quelque chose est changé sur votre écran. Donc, il vous demandera l'action appropriée.

protected boolean onSavePrompt() { 

    return true; 

    }