J'ai un problème avec la définition de texte dans un TextView:
TextView Android:editable = "true".
Dans mon .Java, il semble que cela devrait fonctionner:
text = (EditText) findViewById(R.id.this_is_the_id_of_textview);
text.setText("TEST");
Mais ce n'est pas le cas. Quelqu'un peut-il me dire ce qui ne va pas ici?
Dans votre classe Java, définissez le type "EditText
" sur "TextView
". Parce que vous avez déclaré une TextView
dans le fichier layout.xml
Le code devrait plutôt ressembler à ceci:
TextView text = (TextView) findViewById(R.id.this_is_the_id_of_textview);
text.setText("test");
Pour utiliser n'importe quelle activité, utilisez le code ci-dessous ... Suivez ces étapes une par une:
1.Déclarer
private TextView event_post;
2. Lie ce
event_post = (TextView) findViewById(R.id.text_post);
3.SetText dans
event_post.setText(event_post_count);
Essayez comme ça:
TextView text=(TextView)findViewById(R.id.textviewID);
text.setText("Text");
Au lieu de cela:
text = (EditText) findViewById(R.id.this_is_the_id_of_textview);
text.setText("TEST");
J'avais un problème similaire, mais mon programme se bloquait lorsque j'essayais de définir le texte. J'essayais de définir la valeur de texte à partir d'une classe qui étend AsyncTask, et c'est ce qui causait le problème.
Pour le résoudre, j'ai déplacé mon setText vers la méthode onPostExecute
protected void onPostExecute(Void result) {
super.onPostExecute(result);
TextView text = (TextView) findViewById(R.id.errorsToday);
text.setText("new string value");
}
Ou vous pouvez faire de cette façon:
((TextView)findViewById(R.id.this_is_the_id_of_textview)).setText("Test");
Vous définissez le texte sur un champ qui a été affiché dans une autre instance de votre activité résidant en espèces, par exemple, lorsqu'elle était orientée paysage. Ensuite, il a été recréé pour une raison quelconque. Vous devez définir le texte de manière inhabituelle en enregistrant la chaîne dans SharedPreferences et en forçant la relance de l'activité à l'aide de recreate (), par exemple pour mOutputText:
@Override
protected void onResume() {
super.onResume();
String sLcl=mPreferences.getString("response","");
if(!sLcl.isEmpty()){
mOutputText.setText(sLcl);
mPreferences.edit().putString("response","").commit();
}
}
private void changeText() {
mPreferences.edit().putString("response",responseText).commit();
recreate();
}
@Override
protected void onActivityResult(
int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
switch (requestCode) {
case CAPTURE_MEDIA_RESULT_CODE:
if (null == data || null == data.getData()) {
showMessage("Sorry. You didn't save any video");
} else {
videoUri = data.getData();
mProgress = new ProgressDialog(this);
mProgress.setMessage("Uploading onYoutube ...");
authorizeIt();// SAY YOU CALL THE changeText() at the end of this method
}
break;
}
}
Dans votre code XML, vous avez utilisé Textview, mais dans le code Java, vous avez utilisé EditText au lieu de TextView. Si vous le changez en TextView, vous pouvez définir Text sur votre objet TextView.
text = (TextView) findViewById(R.id.this_is_the_id_of_textview);
text.setText("TEST");
j'espère que ça va marcher.