2013-08-15 19 views
7

Ho una pagina delle preferenze in cui desidero 3 opzioni "rientrate" o una sorta di sottocategorie simili sotto la preferenza "flashcard personalizzate". In questo momento sono tutti sotto l'altro e sembrano come se fossero per impostazioni diverse. Come faccio a farlo apparire come sottocategorie della preferenza "flashcard personalizzate". Le tre opzioni diventano abilitate solo quando si controllano le flashcard personalizzate. Grazie!Come faccio "sottocategorie" in Preferenze

<?xml version="1.0" encoding="utf-8"?> 
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"> 
< PreferenceCategory 
android:title="Flashcard Selection" 
android:key="flashcard_selection"> 
<CheckBoxPreference 
    android:key="all_flashcards" 
    android:summary="Display All Flashcards" 
    android:title="All Flashcards" 
    android:defaultValue="true" 
    /> 
<CheckBoxPreference 
    android:key="custom_flashcards" 
    android:summary="Display a customized list of flashcards" 
    android:title="Custom Flashcards" 
    android:defaultValue="false"/> 
    <CheckBoxPreference 
     android:key="red_flashcards" 
     android:dependency="custom_flashcards" 
     android:summary="Display Red Flashcards" 
     android:title="Red" 
     android:defaultValue="false" 
     /> 
    <CheckBoxPreference 
     android:key="yellow_flashcards" 
     android:summary="Display Yellow Flashcards" 
     android:title="Yellow" 
     android:defaultValue="false" 
     android:dependency="custom_flashcards" 
     /> 
    <CheckBoxPreference 
     android:key="green_flashcards" 
     android:summary="Display Green Flashcards" 
     android:title="Green" 
     android:defaultValue="false" 
     android:dependency="custom_flashcards" 
     /> 
    <ListPreference 
     android:key="frontside_preference" 
     android:summary="Choose what do you want on your front side" 
     android:title="Front side" 
     android:entries= "@array/Frontside_selection_array" 
     android:entryValues ="@array/Frontside_selection_values" 
     android:defaultValue="1" 
/> 



</PreferenceCategory> 
</PreferenceScreen> 
+0

sottocategorie Aggiunta possono essere ottenuti con 'voci nidificate PreferenceScreen'. Vedi questa risposta [Http://stackoverflow.com/a/16041588/6524594](http://stackoverflow.com/a/16041588/6524594) – ayampolsky

risposta

1

Una possibilità per creare una sottocategoria è quello di utilizzare uno schermo preferenza nidificato commutando il flashcard personalizzati tag CheckBoxPreference a un tag PREFERENCE e la chiusura dopo le tre opzioni personalizzate. Quando si fa clic sull'opzione flashcard personalizzata, viene visualizzata una nuova schermata con le tre opzioni di casella di controllo.

<PreferenceCategory 
    android:key="flashcard_selection" 
    android:title="Flashcard Selection"> 
    <CheckBoxPreference 
     android:defaultValue="true" 
     android:key="all_flashcards" 
     android:summary="Display All Flashcards" 
     android:title="All Flashcards" /> 
    <PreferenceScreen 
     android:defaultValue="false" 
     android:key="custom_flashcards" 
     android:summary="Display a customized list of flashcards" 
     android:title="Custom Flashcards" > 

     <CheckBoxPreference 
      android:defaultValue="false" 
      android:dependency="custom_flashcards" 
      android:key="red_flashcards" 
      android:summary="Display Red Flashcards" 
      android:title="Red" /> 
     <CheckBoxPreference 
      android:defaultValue="false" 
      android:dependency="custom_flashcards" 
      android:key="yellow_flashcards" 
      android:summary="Display Yellow Flashcards" 
      android:title="Yellow" /> 
     <CheckBoxPreference 
      android:defaultValue="false" 
      android:dependency="custom_flashcards" 
      android:key="green_flashcards" 
      android:summary="Display Green Flashcards" 
      android:title="Green" /> 


    </PreferenceScreen> 

</PreferenceCategory>