بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
کرش کردن در حین باز شدن دیالوگ
سلام استاد و ممنون از آموزش های خوبتون
توی قسمتی که test dialog تدریس شد منم یه دونه نوشتم و نمایشش میده ولی وقتی کدی برای دکمه در اون دیالوگ مینویسم با اینکه هیچ ارور دستوری در برنامه ظاهر نمیشه و برنامه اجرا میشه ولی بعد از اجرای دیالوگ بدون اینکه اصلا دیالوگ نشون داده بشه برنامه کرش میکنه
کد این قسمت اینه:
final Dialog dialog1 = new Dialog(Test_dialogsActivity.this);
dialog1.setContentView(R.layout.dialog_test);
Button btnok1 = (Button) findViewById(R.id.btnok);
btnok1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
dialog1.dismiss();
}
});
dialog1.show();
تاکید میکنم که وقتی onclicklistener رو تعریف میکنم برنامه کرش میکنه و بدون اون دیالوگ درست باز میشه. درضمن برای هر چیز دیگه ای از اون دیالوگی که ساختم هم onclicklistener تعریف میکنم بازم این مشکل هست.
ممنون
برای این سوال 1 پاسخ وجود دارد.
پاسخ به سوال
uncocoder
12 سال پیش
+1
0
اگر btnok داخل ریسورس مربوط به Dialog هست باید بنویسید:
اما اگر btnok داخل ریسورس Activity باشد که قرار هست دیالوگ رو باز کنه، کدی که نوشته ای درسته و باید مطمئن باشید که btnok وجود داشته باشه.
در کل کدهای داخل onClickListener تا زمان کلیک نشدن اجرا نخواهد شد پس کرش به آن ربطی ندارد و علت کرش نامعتبر بودن ( null ) بودن btnok1 خواهد بود.
Button btnok1 = (Button) dialog1.findViewById(R.id.btnok);
اما اگر btnok داخل ریسورس Activity باشد که قرار هست دیالوگ رو باز کنه، کدی که نوشته ای درسته و باید مطمئن باشید که btnok وجود داشته باشه.
در کل کدهای داخل onClickListener تا زمان کلیک نشدن اجرا نخواهد شد پس کرش به آن ربطی ندارد و علت کرش نامعتبر بودن ( null ) بودن btnok1 خواهد بود.
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .