آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

کار نکردن کد java

masoud hossein pour  9 سال پیش  9 سال پیش
0 0

سلام من یه ادیت تکست دارم و میخوام از کاربر چند تا ورودی بگیرم
که اگه کاربر هر کدوم رو وارد کرد جواب درست باشه ولی کدی که نوشتم کار نمیکنه





check.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Set<String> names = new HashSet<String>();
names.add("john");
names.add("mary");
names.add("peter");

if(edt_1.getText().toString().toLowerCase().equals(names)){
txt_q2.setText("where are you from?");
}
else if(edt_1.getText().toString().length()== 0){
edt_1.setError("فیلد خالی است.");
}
else{
edt_1.setError("دوباره تلاش کنید یا از قسمت راهنمایی استفاده کنید.");
}
}
});

}
}
 برای این سوال 1 پاسخ وجود دارد.
پاسخ به سوال 
Amir  9 سال پیش
0 0

توی کد زیر شما اومدید تست کردید که محتویات EditText با خود آرایه ی names برابر باشه نه عناصر داخلش:

if(edt_1.getText().toString().toLowerCase().equals(names)){
    txt_q2.setText("where are you from?");
}

و شما باید به کد زیر تغییرش بدید:

for (String name: names) {
    if(edt_1.getText().toString().toLowerCase().equals(name)){
        txt_q2.setText("where are you from?");
    }
}
 حالا به خاطر اینکه حلقه ی for رو اضافه کردید باید یه تغییر دیگه هم به کدهاتون بدید که else if و else درست کار کنه.

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .