نحوه کار با چکباکس (CheckBox) در اندروید
فیلم نحوه کار با چکباکس ( CheckBox ) در اندروید
متن به همراه عکس و کد نحوه کار با چکباکس ( CheckBox ) در اندروید
CheckBox چیست؟
چک باکس (CheckBox) یک انتخابگر است که میتواند بین دو حالت انتخاب شده و یا انتخاب نشده تغییر وضعیت دهد.
نحوهی کدنویسی:
ابتدا یک پروژه ی جدید به نام CheckBox میسازیم.
سپس از طریق آدرس زیر وارد قسمت لایهی مربوط به آن میشویم:
app>res>layout>activity_main
در این قسمت کدهای زیر را اضافه میکنیم:
1 2 3 4 5 6 7 8 9 10 |
<CheckBox android:id="@+id/chb_MainAcitiy_check" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="8dp" android:layout_marginEnd="8dp" android:text="این یک چک باکس است" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> |
توضیح کدها:
- در خط 1، یک شناسه معرفی کردهایم که از طریق آن بتوانیم در قسمت جاوا آن را شناسایی کرده و استفاده کنیم.
- در خط 2، عرض CheckBox را مشخص کردهایم.
- در خط 3، طول CheckBox را مشخص کردهایم.
- در خط 6 یک متن راهنما مینویسیم.
- زمانی که شما در قسمت Preview، CheckBoxرا به دیوارههای راست وچپ میکشیم خطوط کد 4 تا 5 و7 تا 9 ایجاد میشود.
سپس از طریق آدرس زیر وارد قسمت جاوا میشویم:
app>java>com.kazemieh.www. CheckBox >MainActivity
در این قسمت کدهای زیر را وارد میکنیم:
روش اول:
1 2 3 4 |
setContentView(R.layout.activity_main); final CheckBox chb=findViewById(R.id.chb_MainAcitiy_check); Button b=findViewById(R.id.b_MainActivity_show); |
توضیح کد ها:
- در این قسمت CheckBox را تعریف کردهایم و از طریق متد findviewbyid، آدرس آنها را در قسمت لایه دادهایم.
سپس Button را مشابه قبل تعریف میکنیم:
1 2 3 4 5 6 7 8 9 10 11 |
b.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { if (chb.isChecked()){ Toast.makeText(getApplicationContext(),"چک باکس روشن است",Toast.LENGTH_LONG).show(); }else { Toast.makeText(getApplicationContext(),"چک باکس خاموش است",Toast.LENGTH_LONG).show(); } } }); |
- در خط 1، به وسیلهی متد setonclicklistener، قابلیت کلیک شدن را به دکمهی خود میدهیم.
- در خط 4، شرطی قرار دادهایم که مشخص میکند پس انتخاب Button چه رویدادی رخ دهد. در اینجا در صورتی که CheckBox دارای تیک باشد، یعنی انتخاب شده باشد، عبارت “چک باکس روشن است” نمایش داده میشود. در غیر این صورت عبارت “چک باکس خاموش است” نمایش داده میشود. (با استفاده از متد isChecked وضعیت بررسی میشود.)
روش دوم:
1 2 3 4 5 6 7 8 9 10 11 12 |
chb.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { // Toast.makeText(getApplicationContext(),"چک باکس کلیک شد",Toast.LENGTH_LONG).show(); if (chb.isChecked()){ Toast.makeText(getApplicationContext(),"چک باکس روشن است",Toast.LENGTH_LONG).show(); }else { Toast.makeText(getApplicationContext(),"چک باکس خاموش است",Toast.LENGTH_LONG).show(); } } }); |
توضیح کد ها:
1_ در خط 1، این قسمت به خود CheckBox خاصیت کلیک داده میشود.
2_ در خط 4، مشابه روش اول، شرطی قرار دادهایم که مشخص میکند پس انتخاب Button چه رویدادی رخ دهد.
کدهای کامل بخش لایه:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
<?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout 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" tools:context=".MainActivity"> <CheckBox android:id="@+id/chb_MainAcitiy_check" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="8dp" android:layout_marginEnd="8dp" android:text="این یک چک باکس است" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> <Button android:id="@+id/b_MainActivity_show" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="چک کن" android:layout_marginStart="8dp" android:layout_marginTop="8dp" android:layout_marginEnd="8dp" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/chb_MainAcitiy_check" /> </androidx.constraintlayout.widget.ConstraintLayout> |
کدهای کامل بخش جاوا:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
package com.kazemieh.www.checkbox; 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); final CheckBox chb=findViewById(R.id.chb_MainAcitiy_check); Button b=findViewById(R.id.b_MainActivity_show); b.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { if (chb.isChecked()){ Toast.makeText(getApplicationContext(),"چک باکس روشن است",Toast.LENGTH_LONG).show(); }else { Toast.makeText(getApplicationContext(),"چک باکس خاموش است",Toast.LENGTH_LONG).show(); } } }); chb.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { // Toast.makeText(getApplicationContext(),"چک باکس کلیک شد",Toast.LENGTH_LONG).show(); if (chb.isChecked()){ Toast.makeText(getApplicationContext(),"چک باکس روشن است",Toast.LENGTH_LONG).show(); }else { Toast.makeText(getApplicationContext(),"چک باکس خاموش است",Toast.LENGTH_LONG).show(); } } }); /* if (chb.isChecked()){ Toast.makeText(getApplicationContext(),"چک باکس روشن است",Toast.LENGTH_LONG).show(); }else { Toast.makeText(getApplicationContext(),"چک باکس خاموش است",Toast.LENGTH_LONG).show(); }*/ } } |
اجرای پروژه:
دانلود فایل
مطالب زیر را حتما بخوانید
-
نحوهی کار با ویدئوپلیر (Video Player) از طریق پوشهی raw
7.42k بازدید
-
آلرت دیالوگ (AlertDialog) چیست و نحوهی کار با آن چگونه است؟
7.02k بازدید
-
اسنکبار (Snackbar) در اندروید
4.56k بازدید
-
ّFloating action Button (فلوتینگ اکشن باتن) در اندروید
4.4k بازدید
-
نحوهی کار با فریم لیوت (FrameLayout)
4.83k بازدید
-
یک روش برای تمرکز در برنامهنویسی
3.27k بازدید
دیدگاهتان را بنویسید