I have some TextView
and each have an OnClickListener
. I would like get information in this method to TextView
TextView tv2 = new TextView(this,(String)book.get(i),this);
tv2.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
Intent intent = new Intent(Contact.this,Discution.class);
//String str = this.getText(); //like this
startActivity(intent);
}
});
How can I do : this.getText();
in an OnClickListener
?
This is wrong
TextView tv2 = new TextView(this,(String)book.get(i),this);
You will need TextView to be final and the constructor should match any of the below
TextView(Context context)
TextView(Context context, AttributeSet attrs)
TextView(Context context, AttributeSet attrs, int defStyle)
It should be
final TextView tv2 = new TextView(this);
You are not using any of the above. Totally wrong
Then inside onClick
String str = tv2.getText().toString();
Its declared final cause you access tv2 inside annonymous inner class.
http://docs.oracle.com/javase/tutorial/java/javaOO/anonymousclasses.html#accessing
You can also use the View v
.
TextView tv = (TextView) v;
String str = tv.getText().toString();
tv2.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
Intent intent = new Intent(Contact.this,Discution.class);
String str = tv2.getText().toString();
startActivity(intent);
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With