Hello all,

I'm trying to make a somewhat advanced settings Activity (one that has
a RadioGroup in one of the cells).  The layout xml file contains the
following:

<?xml version="1.0" encoding="utf-8"?>

<PreferenceScreen
xmlns:android="http://schemas.android.com/apk/res/android";
>

        <PreferenceCategory android:title="Email">

                <EditTextPreference
                        android:name="changeEmail"
                        android:summary="Click to Change Email"
                        android:persistent ="false"
                        android:title="Click to Change Email"
                        android:key="editTextPref" />
        </PreferenceCategory>

        <PreferenceCategory android:title="Location Sharing">
                        <Preference
                                android:title="placeholder"
                                android:summary="summary text"
                                android:layout_width="fill_parent"
                                android:layout_height="wrap_content"
                                android:key="sharingPrefs"
                                android:layout="@+id/radio_group_prefs"
                                />

        </PreferenceCategory>
...

Another layout xml file (radio_group_preferences.xml) contains the
following:

<?xml version="1.0" encoding="utf-8"?>
<RadioGroup
                xmlns:android="http://schemas.android.com/apk/res/android";
                android:id="@+id/radio_group_prefs"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical">

                <RadioButton
                        android:checked="false"
                        id="@+id/option1"
                        android:text="radio_group_1_option1"
                         />

                <RadioButton
                        android:checked="false"
                        android:text="radio_group_1_option2"
                        id="@+id/option2" />

                <RadioButton
                        android:checked="false"
                        android:text="radio_group_1_option3"
                        id="@+id/option3" />

        </RadioGroup>

In my settings activity java class, I have the following:

        protected void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                addPreferencesFromResource(R.layout.settings);

                //email textfield setup omitted

                Preference sharingPrefs =
(Preference)findPreference("sharingPrefs");
                RadioGroup prefView = (RadioGroup) sharingPrefs.getView(null,
null);
                prefView.setOnCheckedChangeListener(radioListener);
}

And the RadioGroup listener is defined as such:

RadioGroup.OnCheckedChangeListener radioListener = new
OnCheckedChangeListener() {

                @Override
                public void onCheckedChanged(RadioGroup group, int checkedId) {
                        Log.v(TAG, "Radio check changed, checkedId = 
"+checkedId);
        }
        };

Now here's the weird part.  It runs and renders correctly.  However,
when I shift around the radio button, I don't get the log messages.
Going through the debugger, I could see that the RadioGroup's
onCheckedChangedListener was getting set correctly (at least, it was
null before the call to setOnCheckedChangeListener and it wasn't null
afterward).  How can this be?  It seems like the calls to
onCheckedChanged are somehow being suppressed.  Is this a legitimate
bug?

Thanks,
Myung

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to