L'accès TextView d'une autre classe
J'ai obtenu mon démarrage principal de la classe de chargement main.xml mais je suis à essayer de comprendre comment accéder à la TextView d'une autre classe qui est en cours de chargement informations à partir d'une base de données. Je voudrais publier que des informations sur le TextView.
Jusqu'à présent, je n'en ai pas trouvé des exemples utiles sur Google.
EDIT:
C'est ma classe qui est en train de faire le travail de Base de données:
import android.widget.TextView;import android.view.View;
public class DBWork{
private View view;
...
TextView tv = (TextView) view.findViewById(R.id.TextView01);
tv.setText("TEXT ME")
Pourtant, chaque fois que je fais que je reçois un nullpointerexception
Comment est votre classe principale de l'appel de la DBWork classe?
C'est à l'intérieur de la onCreate: nouvelle DBWork("192.168.2.14:8080/DH/DPost", "test_db");
C'est à l'intérieur de la onCreate: nouvelle DBWork("192.168.2.14:8080/DH/DPost", "test_db");
OriginalL'auteur Jenny | 2011-01-05
Vous devez vous connecter pour publier un commentaire.
Si j'étais vous, je serais garder tous vos mises à jour de l'INTERFACE utilisateur au sein de votre principal
Activity
classe. Vous venez de recevoir votreDBWork
classe pour retourner le texte que vous souhaitez afficher sur votreActivity
. Donc quelque chose comme:Alors votre db classe:
Veuillez noter que toutes les opérations de base de données que vous effectuez au cours de
onCreate
devrait être aussi rapide que possible car ils sont en cours d'exécution dans le thread de l'INTERFACE utilisateur. Si vous allez effectuer long de l'exécution de requêtes de base de données, alors vous devez utiliser unAsyncTask
ou créer un nouveauThread
et l'utilisation d'unHandler
de mettre à jour l'INTERFACE utilisateur.OriginalL'auteur dave.c
Vous devez utiliser LayoutInflater :
myView.findViewById(..)
OriginalL'auteur dirhem
Vous pouvez passer les références pour toutes vos commandes après la création de votre instance de classe. Personnellement, je passe toute la classe qui a toutes les commandes comme des variables publiques.
OriginalL'auteur Vlad
Vous havew à définir votre TextView à l'aide de xml et de donner un id. Exemple:
Alors vous cann accès dans chaque classe à l'aide de
findViewById(int)
ne récupérer un élément d'INTERFACE utilisateur à partir d'une ressource que vous avez déjà chargé à l'aide desetContentView(int)
.OriginalL'auteur Java_Waldi
Il est vrai:
Mais avant, vous devez spécifier ce fichier que vous souhaitez utiliser par:
Sans que le
findViewById(R.id.myTextViewInXml);
toujours, sera de retournull
.Ceci est un exemple:
La classe doit être une extension si une activité.Par exemple public class miaSuocera s'étend de l'Activité {......}.
OriginalL'auteur pedr0
Dans l'exemple ci-dessus où la vue bt1 est d'une autre classe.vous pouvez accéder à bt1 par l'aide de la classe d'instance et d'obtenir l'id.Maintenant,faites ce que vous voulez faire avec bt1 instance.
Remarque: Assurez-vous que bt1 est public d'une autre classe
OriginalL'auteur Syed Danish Haider