رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
رادیو باتن در اندروید
#1
سلام ، من میخوام کار با رادیو باتن رو یاد بگیرم ، این کد رو از سایت اندروید برداشتم اما متاسفانه اکتویتی کامل نیست (به نظرم ساید اندروید باید اکتویتی رو کامل می نوشت !) ، اگر ممکنه کسی اکتویتی رو به شکل کامل تر بنویسه همراه با Import و .. نحوه کار با رویداد Onlcik رادیو باتن رو یاد بگیرم . ممنونم





<?xml version="1.0" encoding="utf-8"?>
<RadioGroup xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical">
    <RadioButton android:id="@+id/radio_pirates"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/pirates"
        android:onClick="onRadioButtonClicked"/>
    <RadioButton android:id="@+id/radio_ninjas"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/ninjas"
        android:onClick="onRadioButtonClicked"/>
</RadioGroup>


کد اکتویتی


public void onRadioButtonClicked(View view) {
    // Is the button now checked?
    boolean checked = ((RadioButton) view).isChecked();
    
    // Check which radio button was clicked
    switch(view.getId()) {
        case R.id.radio_pirates:
            if (checked)
                // Pirates are the best
            break;
        case R.id.radio_ninjas:
            if (checked)
                // Ninjas rule
            break;
    }
}


پاسخ
تشکر شده توسط:
#2
منظورتون از اینکه کامل نیست چیه؟ شما باید برای رویداد کلیک radioButton کد بنویسین. اینجا هم کد رو گذاشته.
پاسخ
تشکر شده توسط: بیتا_حکمت
#3
سلام ، منظورم نحوه فراخوانی این رویداد بود ، صب نمی دونستم باید رویداد onRadioButtonClicked رو داخل فایل XML تعریف کنم ، فکر می کردم
این فراخوانی باید داخل اکتویتی انجام بگیره .
پاسخ
تشکر شده توسط:
#4
چه کاریه این نمونه کد خیلی الکی پیچیدش کرده
شما تابع برای رویداد کلیک رادیو باتن هم میتونین توی xml اکتیویتیتون تعریف نکنین چون قرار نیست با کلیک روی رادیوباتن که اتفاقی بیوفته! قراره چک بخوره و اطلاعاتش بعد از کلیک روی دکمه ی submit که قرار میدین ارسال بشه. یعنی درواقع باید فقط دکمه ای ارسال اطلاعات باید کلیک بشه و رادیو باتن چک بخوره
شما داخل اکتیویتیتون اتصالو به شی رادیوباتنتون توی اکتیویتی مثل کد زیر برقرار کنین
final RadioButton radioName = (RadioButton) findViweById(R.id.radioID)

بعدش توی رویداد setOnClickListener دکمه ی submitتون برسی کنین که اگه چک خورده بود اون رادیو باتن چه اطلاعاتی ارسال بشه و اگه چک نخورده بود چه عملیاتی؟

if(radioName.isChecked){
// your code 
}else{
//your code
}

به همین راحتی
پاسخ
تشکر شده توسط: بیتا_حکمت
#5
بعضی وقتا شاید لازم باشه کاری انجام بشه. مثلاً با انتخاب یه رادیو باتن، برخی از عناصر UI مخفی یا ظاهر بشن.
پاسخ
تشکر شده توسط: بیتا_حکمت




کاربران در حال بازدید این موضوع: 2 مهمان