Web uygulamalarında olduğu gibi Android uygulamalarında da kullanıcıdan evet/hayır şeklinde girdi almak istediğimizde (örneğin onay kutusu) CheckBox aracı kullanılır. Android Studio'da uygulamanıza CheckBox eklemek için araçlar paletinin Buttons üst paleti altındaki CheckBox arasını tasarımınıza ekleyebilirsiniz.
CheckBox aracının basit bir uygulamasını yapalım, örneğin arayüze bir CheckBox ve bir de Button ekleyelim ve butona tıklama durumunda CheckBox'ın işaretli olup olmadığını kontrol edelim.
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center"
tools:context=".MainActivity">
<CheckBox
android:id="@+id/checkBox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Onay" />
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Kontrol" />
</LinearLayout>
MainActivity.java
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
CheckBox cb_onay = (CheckBox) findViewById(R.id.checkBox);
Button btn_kontrol = (Button) findViewById(R.id.button);
btn_kontrol.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (cb_onay.isChecked())
Toast.makeText(getApplicationContext(),"Checkbox işaretli", Toast.LENGTH_SHORT).show();
else
Toast.makeText(getApplicationContext(),"Checkbox işaretli değil", Toast.LENGTH_SHORT).show();
}
});
}
}
Not: CheckBox'ın ID'sini hatalı yazmanız durumunda java.lang.NullPointerException: Attempt to invoke virtual method 'boolean android.widget.CheckBox.isChecked()' on a null object reference hatası alırsınız. Java ile XML dosyalarındaki ID'ler aynı olmalı.
Editör editi: sitedeki bazı diğer benzer yazılar için;
bkz: Android uygulamalarında sp nedir ve nasıl kullanılır?
bkz: Android Studio'da Infer Constraints Nasıl Kullanılır?
bkz: Android Uygulamasında Spinner Kullanımı
bkz: Android uygulamada Toast Message Kullanımı ve Örnekleri
bkz: Android uygulamasında setText ile int değişken kullanabilmek
bkz: Android Studio'da uygulamaya buton eklemek