بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
خطای Force Close در پروژه ثبت محتوا (علت چیست؟) (حل شد)
سلام و عرض ادب
من یک پروژه ساختم و خواستم وقتی کاربر عبارتی وارد میکنه (از نوع عدد) و دکمه رو میزنه :
- اگر عدد صفر باشه بنویسه : ورودی صفر هست
- اگر عدد چیزی غیر از صفر بود : بنویسه عدد فلان است
- اگر فیلد رو خالی گذاشت و دکمه رو زد بنویسه: لطفا فیلد رو با مقداری پر کنید
دومورد اولش درست کار میکنه اما وقتی خالی بزاره و دکمه رو بزنه ، Force Close میده. کد من از این قراره:
@Override
public void onClick(View arg0) {
int value = Integer.parseInt(edtInput.getText().toString());
if (edtInput == null) {
txtResult.setText("Please Put Some Value");
} else if (value == 0) {
txtResult.setText("Value is: Zero");
} else {
txtResult.setText("Value is: " + value * 2);
}
txtResult.setBackgroundColor(Color.parseColor("#00ff00"));
txtResult.setTextColor(Color.parseColor("#000000"));
}
});
ممنون میشم راهنمایی بفرمایید.
برای این سوال 2 پاسخ وجود دارد.
پاسخ به سوال
hosseinAmini
12 سال پیش
0
0
سلام
اینجوری باید بنویسی
if(value.contains("")){
txtResult.setText("Please Put Some Value");
}
پاسخ به سوال
sadeghbarout
12 سال پیش
+1
0
قبل از تبدیل کردن مقدار درون EditText به int باید چک کنی که حتما EditText مقدار داشته باشه:
@Override
public void onClick(View v) {
EditText edtInput = (EditText) findViewById(R.id.editText1);
if (edtInput.getText().toString().equals("")) {
txt.setText("Please Put Some Value");
} else {
int value = Integer.parseInt(edtInput.getText().toString());
if (value == 0) {
txt.setText("Value is: Zero");
} else {
txt.setText("Value is: " + value * 2);
}
}
txt.setBackgroundColor(Color.parseColor("#00ff00"));
txt.setTextColor(Color.parseColor("#000000"));
}
اگه دقت کنی میبینی که تبدیل مقدار به int بعد از مطمئن شدن از پر بودن EditText انجام گرفته
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .