Question

Salut tout le monde! Je suis nouveau à la programmation mûre bien que je n'ai certains expérience java, avec c # être ma langue principale).

Ce que je suis en train de faire est d'écrire un fil qui se déroulera au démarrage du système et existent en arrière-plan en tant qu'auditeur.

Je voudrais que mon application à mettre en œuvre KeyListener et asseyez-vous essentiellement en arrière-plan pendant que le téléphone est allumé et le suivi d'un histogramme de combien de fois chaque bouton a été pressé. Je suis en cours d'exécution sur le simulateur donc pour l'instant je vais juste avoir imprimer à la console quand il obtient une touche.

J'ai été en mesure de mettre en œuvre un keyListener dans un UIApplication mais il ne fonctionne que lorsque l'application est chargée.

Voici l'application que j'ai actuellement

public class CustomApp extends UiApplication
{
    private keyListenerThread listener;
    public stati void main(String[] args)
    {
        CustomApp myApp = new CustomApp();
        myApp.enterEventDispatcher();
    }

    public CustomApp()
    {
        listener = new KeyListenerThread();
        this.addKeyListener(listener)

        //.....other GUI setupthings....

        pushScreen(mainScreen);
    }

    private class KeyListenerThread extends Thread implements KeyListener
    {

        public KeyListenerThread()
        {

        }

        public boolean keyDown(int arg0, int art1)
        {
            System.out.println("button pressed!!");
            }

        //...other keylistener methods
    }

cela ne fonctionne que si l'application est ouverte bien. de sorte que son pas vraiment ce que je suis en train de réaliser. Si quelqu'un peut me diriger dans la bonne direction, je vous en serais reconnaissant!

EDIT:

J'ai trouvé cet exemple qui montre en partie ce que je suis à la recherche: http://supportforums.blackberry.com/t5/Java-Development/Allow-a-background-listener-to-detect-and -update-a-GUI / ta-p / 442907 Le seul problème est que im faire cela dans le simulateur et je ne sais pas comment exercer ce code afin que je puisse vraiment debug à la façon dont son fonctionnement. On m'a dit que la fonction keyListener cative en arrière-plan, ce qui est regrettable becuase son plus facile à tester avec. Quels sont les autres auditeurs que je pourrais configurer dans ce même mode facilement tester et apprendre comment le code fonctionne dans le simulateur?

Merci!
Stephanie

Était-ce utile?

La solution

Vous ne pouvez pas écouter clavier, boule de commande ou entrée trackpad à moins que votre application dispose d'un écran au premier plan.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top