2011-01-28 1 views
1

J'essaie d'ajouter du texte à l'écran principal de l'autre classe, j'ai essayé de passer l'objet écran de la classe qui étend MainScreen mais quand j'essaye d'ajouter quelque chose, il me donne l'autorisation refusée l'exception. Quelle est la bonne façon d'ajouter par exemple du texte déposé à l'écran principal de classe différente?Modifier l'écran principal de la classe différente sur BlackBerry?

Edit:

TheMainClass publique étend MainScreen {

public TheMainClass() 
{ 
    LabelField labelField = new LabelField("Hello"); 
    add(labelField); 

} } 

publique AutreClasse {

public OtherClass(){ 

    // i want to add new LabelField here to say for example "World!" to the 
    // TheMainClass screen 
} 

} 
+1

Pouvez-vous nous montrer du code? Vous devriez normalement exposer une méthode publique ou deux sur l'écran principal qui permet aux autres classes de changer les choses, mais difficile à dire sans aucun code à regarder. –

+0

sûr, j'ai ajouté un exemple de code à la question. – Jimmy

Répondre

2

Il y a plusieurs façons de le faire, on serait:

public TheMainClass extends MainScreen { 
    public TheMainClass() { 
     LabelField labelField = new LabelField("Hello"); 
     add(labelField); 
    } 
} 

public OtherClass { 

    public addLabelTo(Screen aScreen) { 
     aScreen.add(new LabelField("World!")); 
    } 
} 

TheMainClass theMainClass = new TheMainClass(); 
OtherClass otherClass = new OtherClass; 

otherClass.addLabelTo(theMainClass); 

Bien sûr, vous devrez vous assurer que l'appel à addLabelTo est exécuté sur le thread d'événement.

Questions connexes