5.00 / 1 oy

boolean android.widget.CheckBox.isChecked()' on a null object reference hatası

Android Studio'da Checkbox Kullanımı ve Örnekleri yazısında bu hatadan da bahsedecektim ama unutunca yeni bir başlık altında bu hatayı almakta olan arkadaşlara bilgi vermek amacıyla kısa bir çözüm paylaşmak istedim.

Android Studio ile uygulama geliştirirken java.lang.NullPointerException: Attempt to invoke virtual method 'boolean android.widget.CheckBox.isChecked()' on a null object reference hatası almanız, hata kodunda bahsettiği gibi nesne referansının boş olmasından kaynaklıdır. Yani xml tasarımındaki checkbox ID'si ile java dosyasındaki checkbox ID'si birbirinden farklı ise bu hatayı alıyor olmanız çok muhtemel.

Örneğin activity_main.xml dosyasında checkbox1 adında bir checkbox oluşturdunuz ve MainActivity.java dosyasında da aşağdaki kodu yazarak checkbox'a kodlar üzerinden erişmek istesiniz diyelim.

final CheckBox cb_onay = (CheckBox) findViewById(R.id.checkBox);

Bu durumda üstteki hatayı alırsınız, çünkü arayüzde checkBox ID'sinde bir checkbox kontrolü yok ve cb_onay nesnesi de bu yüzden null oldu. Olması gereken ise aynı isme sahip olmalarıdır.

final CheckBox cb_onay = (CheckBox) findViewById(R.id.checkbox1);

Artık cb_onay nesnesi üzerinden isChecked() gibi checkbox metodlarına erişebilirsiniz.

 

Editör editi: sitedeki bazı diğer benzer yazılar için;

bkz: Android Studio'da Class için Getter ve Setter Eklemek

bkz: Android Studio'da Editör Tasarımını Değiştirmek

bkz: Android Studio'da Font Büyüklüğünü Değiştirmek

bkz: Android Studio projesini Github repository'e aktarmak

bkz: Android Studio Duplicate Resources Hatası ve Çözümü

bkz: Android Error: Missing Constraints in ConstraintLayout Hatası

utku33

18.09.2021 20:04

Bu soru henüz yanıtlanmamış.

Bu soruya sadece kayıtlı kullanıcılar yanıt yazabilirler. Yanıt yazmak için lütfen giriş yapınız.

Reitix
boolean android.widget.CheckBox.isChecked()' on a null object reference hatası

İnternet sitemizdeki deneyiminizi iyileştirmek için çerezler kullanıyoruz. Bu siteye giriş yaparak çerez kullanımını kabul etmiş sayılıyorsunuz. Daha fazla bilgi.