Je travaille sur un programme Android. Un utilisateur clique sur un bouton Je fais des calculs et je souhaite modifier les valeurs que j'ai sur ma vue dans certains objets TextView. Quelqu'un peut-il s'il vous plaît me dire comment le faire dans mon code?
Je suppose que cette question est une continuation de celui-ci .
Qu'essayez-vous de faire? Voulez-vous vraiment changer dynamiquement le texte dans vos objets TextView lorsque l'utilisateur clique sur un bouton? Vous pouvez certainement le faire, si vous avez une raison, mais si le texte est statique, il est généralement défini dans le fichier main.xml, comme ceci:
<TextView
Android:id="@+id/rate"
Android:layout_width="fill_parent"
Android:layout_height="wrap_content"
Android:text="@string/rate"
/>
La chaîne "@ string/rate" fait référence à une entrée de votre fichier strings.xml qui ressemble à ceci:
<string name="rate">Rate</string>
Si vous voulez vraiment changer ce texte plus tard, vous pouvez le faire en utilisant l'exemple de Nikolay - vous obtiendrez une référence à TextView en utilisant l'id défini pour cela dans main.xml, comme ceci:
final TextView textViewToChange = (TextView) findViewById(R.id.rate);
textViewToChange.setText(
"The new text that I'd like to display now that the user has pushed a button.");
Nous devons d’abord trouver une Button
:
Button mButton = (Button) findViewById(R.id.my_button);
Après cela, vous devez implémenter View.OnClickListener
et y trouver le TextView
et exécuter la méthode setText
:
mButton.setOnClickListener(new View.OnClickListener {
public void onClick(View v) {
final TextView mTextView = (TextView) findViewById(R.id.my_text_view);
mTextView.setText("Some Text");
}
});
Ajoutez d'abord textView dans un fichier xml
<TextView
Android:id="@+id/rate_id"
Android:layout_width="fill_parent"
Android:layout_height="wrap_content"
Android:text="@string/what_U_want_to_display_in_first_time"
/>
puis ajoutez un bouton dans le fichier xml avec id btn_change_textView et écrivez ces deux lignes de code dans la méthode onCreate()
Button btn= (Button) findViewById(R.id. btn_change_textView);
TextView textView=(TextView)findViewById(R.id.rate_id):
puis utilisez clickListener()
sur l'objet bouton comme ceci
btn.setOnClickListener(new View.OnClickListener {
public void onClick(View v) {
textView.setText("write here what u want to display after button click in string");
}
});