L'ouverture d'un Dialogue avec la saisie de texte à partir d'une Vue sur Android
J'ai une application avec une Vue basée sur la SurfaceHolder (similaire à l'Lunar Lander tutoriel).
L'ensemble de l'interface graphique est dessiné sur une toile, et je veux être en mesure d'inviter l'utilisateur à la saisie de texte à un moment donné, à l'aide d'une mise en page personnalisée de Dialogue, qui est ensuite pris en charge et rendus à la toile à l'aide d'une procédure standard.
Mon problème, cependant, est qu'il semble que la meilleure pratique consiste à ouvrir les boîtes de dialogue de l'Activité.
Ce n'est pas un problème, puisque j'ai pensé que je pourrais créer un Gestionnaire et puis la passer à la Vue qui pourrait à son tour l'utiliser pour transmettre des Messages à partir du thread GUI dans la Vue de l'Activité, qui à son tour pourrait chercher l'entrée, et d'envoyer une réponse, etc.
Problème est, après j'appelle setContentView(R.layout.main)
, qui contient l'ensemble de l'application, je tiens à appeler MyAppView mMyAppView = (MyAppView) findViewById(R.id.app_view_id)
.
Cet appel retourne null
.
Ce qui est considéré comme la meilleure pratique ici? Je ne trouve pas de bons exemples et de l'API est en train de tourner, et bien, pas grand-chose.
Je vous serais reconnaissant de toute l'aide ici.
OriginalL'auteur Gus | 2010-06-17
Vous devez vous connecter pour publier un commentaire.
Créer une boîte de dialogue sur le thème de l'activité pour l'afficher sur votre activité en cours.
Lancement par:
puis attrape la réponse sur
onActivityResult
Manifeste est défini comme:
Lorsque j'essaie d'utiliser ce code, j'obtiens
activity_text_entry cannot be resolved or is not a field txtValue cannot be resolved or is not a field btnDone cannot be resolved or is not a field
. Ai-je raté quelque chose?OriginalL'auteur Pentium10
Je suis également à la recherche pour répondre à cette question pour moi. La réponse ici est un bon. Le développeur android page comme alter dialogue les échantillons.
Je n'ai pas lu complètement, mais si vous recherchez la balise
DIALOG_TEXT_ENTRY
cela semble être ce que vous (et moi).
Je vais étudier l'exemple de la première.
OriginalL'auteur Gdalya