0

J'ai créé un exemple d'application de démonstration pour la préférence Android personnalisée en utilisant support library preference-v7.Android: Création d'une préférence de support personnalisé v7 ne fonctionnant pas comme prévu

code:https://github.com/saurabhkpatel/Android-Custom-Preference-Sample

Je suis confronté à deux problèmes ici:

  1. Dans cette application de démonstration, j'ai au total trois différents types de préférences. L'un est ListPreference, le second est Custom Preference que j'ai créé et le dernier est SwitchPreferenceCompat. Si je mets Custom Preference entre ces deux catégories de préférences, alors cela ne fonctionne pas. S'il vous plaît vérifier cette capture d'écran ci-joint. Vous pouvez voir que le troisième SwitchPreferenceCompat est manquant.

  2. Même je peux voir la barre de recherche deux fois qui vient du fichier de disposition personnalisé, mais j'ai seulement une barre de recherche là-bas.

Tout fonctionne bien si je mets SampleCustomPreference enfin.

Des idées, Pourquoi ce comportement est en train de se produire?

Merci pour votre temps.

Unexpected enter image description here

attendu

enter image description here

Répondre

1

Le fichier de mise en page layout_pref.xml a un problème. La hauteur de la mise en page parent doit être le contenu de l'enveloppe ne correspond pas au parent. Corrigé xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
       android:id="@android:id/widget_frame" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:orientation="vertical" > 

    <TextView 
     android:id="@android:id/title" 
     style="@android:style/TextAppearance.DeviceDefault.SearchResult.Title" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="C Title" /> 

    <TextView 
     android:id="@android:id/summary" 
     style="@android:style/TextAppearance.DeviceDefault.SearchResult.Subtitle" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="C Summary" /> 

    <SeekBar 
     android:id="@+id/seekbar" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" /> 

</LinearLayout>