PDA

View Full Version : یک مشکل درباره دستور شرطی



javaneemroz
جمعه 29 شهریور 1392, 11:29 صبح
سلام
آقا تازه واردم نمیدونم جاش درسته اینجا درخواست بدم یا نه ولی اگر کمکم کنید ممنون میشم
مشکلم اینه که میخوام یه شرط بسازم که وقتی نوشته های چند تا ادیت تکست به مقدار مورد نظر وارد شد یه دستور رو اجرا کنه
مثلا اگر توی ادیت اولی وارد شد "سلام" و توی دومی وارد شد "چطوری" و ... یه دستور رو انجام بده
کد رو به صورت زیر وارد کردم ولی هر کاری میکنم اجرا نمیشه دستور.تنها وقتی شرط رو برای خالی بودن ادیت تکست میزارم دستور اجرا میشه
اینها کدهام هستن:
Button btn=(Button) findViewById(R.id.btn);
btn.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub

if ((eta.equals("سلام"))&(etb.equals("چطوری"))) {
txt.setText("قربونت");

}




}
});

darkenerboy
جمعه 29 شهریور 1392, 12:09 عصر
درستش اینه !

if(eta.getText().toString().equalsIgnoreCase("سلام"))

javaneemroz
جمعه 29 شهریور 1392, 12:10 عصر
دوستان الان کد رو به صورت زیر تغییر دادم جواب داد نمیدونم چرا نمیتونه مقدار استرینگ رو به صورت کد بالا برگردونه!
if (eta.getText().toString().equals("سلام") & etb.getText().toString().equals("چطوری")) {
txt.setText("قربونت");

}

javaneemroz
جمعه 29 شهریور 1392, 12:13 عصر
درستش اینه !

if(eta.getText().toString().equalsIgnoreCase("سلام"))

خب من به جای گرفتن مقدار استرینگ توی if از اون به عنوان string قبل از شرط آوردمش یعنی اینجوری:

final String eta=et.getText().toString();

darkenerboy
جمعه 29 شهریور 1392, 12:15 عصر
خوب معلومه
برای اینکه editText یک شی هستش
و شما در گام اول مقدار اون رو دریافت میکنی !
بعد مقدار بازگشتی مورد نظر به درد شما نمیخوره در گام بدی اون رو تبدیل به رشته میکنی !
و در نهایت اون رو مقایسه میکنی !

موفق باشی

darkenerboy
جمعه 29 شهریور 1392, 12:17 عصر
خب من به جای گرفتن مقدار استرینگ توی if از اون به عنوان string قبل از شرط آوردمش یعنی اینجوری:

final String eta=et.getText().toString();

شما اگه از equalsIgnoreCase استفاده میکردی مشکلی پیش نمیومد !

javaneemroz
جمعه 29 شهریور 1392, 13:59 عصر
شما اگه از equalsIgnoreCase استفاده میکردی مشکلی پیش نمیومد !

ممون ولی با این هم جواب نمیده

خوب معلومه
برای اینکه editText یک شی هستش
و شما در گام اول مقدار اون رو دریافت میکنی !
بعد مقدار بازگشتی مورد نظر به درد شما نمیخوره در گام بدی اون رو تبدیل به رشته میکنی !
و در نهایت اون رو مقایسه میکنی !

موفق باشی

درمورد این هم من قبل از ایجاد شرط مقدار متن ادیت تکست رو گرفتم و توی eta و etb قرار دادم.منظور کلی من این هست که چرا نمیشه اول متن رو بگیرم و توی eta بگذارم و توی شرطم فقط مقدار گرفته شده رو نمیتونم قرار بدم و باید مستقیم توی شرط مقدار متن رو بگیرم