Did u try :

  <ListPreference
                                         android:title="Colour select"
                                        android:summary="Select your
favourite"
                                        android:key="colour"
                                        android:entries="@array/opts"
                                        android:entryValues="@array/
opts_values"
                                       android:defaultValue="@string/
a_string_equivalent_to_one_of_the_opts_values"/>


without making any other changes??



On Mar 4, 10:38 pm, gnufabio <[email protected]> wrote:
> Hi all,
>
> i need to set the defult value for a ListPreference when the Activity
> starts.
> I've tried with `ListPreference.setDefaultvalue("value");` but it
> makes the firts Entry of the List as default. I need it because i must
> check a condition and set as default the value which satisfies that
> condition, so I think it can't be done from the xml file (with
> `android:defaultValue`)
> For example, suppose I have this array of values in the arrays.xml:
>
>     <string-array name="opts">
>         <item>red</item>
>         <item>green</item>
>         <item>blue</item>
>     </string-array>
>
>     <string-array name="opts_values">
>         <item>1</item>
>         <item>2</item>
>         <item>3</item>
>     </string-array>
>
> In the PreferenceScreen xml:
>
>     <ListPreference
>                                          android:title="Colour select"
>                                         android:summary="Select your 
> favourite"
>                                         android:key="colour"
>                                         android:entries="@array/opts"
>                                         
> android:entryValues="@array/opts_values" />
>
> In the Activity I'd like to do something like this:
>
>     String mycolour;
>     if (something)
>     mycolour="1";
>     else
>     mycolour="2";
>     ListPreference  colour=(ListPreference) findPreference ("colour");
>     colour.setDefaultValue(mycolour);
>
> But it doesn't work, because it makes the first choice as default.
> Could you explain me how to make another one as default? Thanks.

-- 
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