FORUMS

Beats Music No Longer Accepting New Accounts

Whenever Apple launches a new product or service, it definitely manages to grab the … more

Do You Do Self-Repairs on Your Devices?

As smartphone designs become more and more complex, self-repairs on devices are also becoming … more

Sony Z4 Slips Out of Top 5 Smartphones in Japan

In a bid to streamline its flagship series which had been losing credibility over the … more

Sprint’s New Unlimited Plan with Ridiculous Capped Speeds

The carrier game in the United States is perpetually rushing forward at … more

[Q] Need help with a program.

3 posts
Thanks Meter: 0
 
By SurajKamble, Junior Member on 31st August 2014, 03:23 PM
Post Reply Subscribe to Thread Email Thread
public void click(View view) {
String one = "one";
EditText et = (EditText)findViewById(R.id.editText1);
String entered_text = et.getText().toString();

if(et.getText().toString() == one){
TextView tv1 = (TextView)findViewById(R.id.textView1);
tv1.setText("Correct!");
}
else{
TextView tv = (TextView)findViewById(R.id.textView1);
tv.setText(one+entered_text); }
}
This is a code snippet extracted from my program, i didn't post the whole program because it wasn't necessary, as the program runs fine without any runtime exceptions.
So, the program when executed on eclipse doesn't show any errors and runs fine, but when run the "if" condition "et.getText().toString() == "one"" always returns false even when the "entered_text" is "one" i.e.; it never prints "correct!" and the code always prints "one+entered_text" that is the statement in the else clause. And the interesting thing is, if you enter "one" the output will be "oneone", that is the else statement.
Please help me where i went wrong.
Thanks in advance.
 
 
31st August 2014, 03:48 PM |#2  
Junior Member
Flag Wrocław
Thanks Meter: 1
 
Donate to Me
More
You're passing view argument in function so try initialize edit text with (EditText)view.findViewById(R.id.edittext);
31st August 2014, 03:57 PM |#3  
OP Junior Member
Thanks Meter: 0
 
More
Quote:
Originally Posted by panwrona

You're passing view argument in function so try initialize edit text with (EditText)view.findViewById(R.id.edittext);

Thanks for the reply.
I did what you said and got a runtime exception.
31st August 2014, 04:01 PM |#4  
Junior Member
Flag Wrocław
Thanks Meter: 1
 
Donate to Me
More
You're running it in fragment or activity?
31st August 2014, 04:02 PM |#5  
OP Junior Member
Thanks Meter: 0
 
More
Quote:
Originally Posted by panwrona

You're running it in fragment or activity?

Activity.
31st August 2014, 05:08 PM |#6  
Junior Member
Flag Wrocław
Thanks Meter: 1
 
Donate to Me
More
Are you initializing it in oncreate or somewhere else?
31st August 2014, 05:25 PM |#7  
arpitkh96's Avatar
Senior Member
Flag panipat
Thanks Meter: 581
 
Donate to Me
More
That's easy. Instead of == use text.equals(one)
String are not compared by mathematical signs

Sent from my XT1033 using XDA Premium 4 mobile app
Post Reply Subscribe to Thread
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes