2016-07-06 2 views
2

Dans mon application Android, je migre mon application vers "com.android.support:preference-v14:23.4.0" pour mon écran de paramètres. J'utilise le thème Theme.appCompat. Tout fonctionne très bien sur les téléphones Android 6.Les lignes de séparation ne sont pas correctes sur les téléphones Android 5 et Android 4

Mais sur les téléphones Android 5 et Android 4, j'ai remarqué que les lignes de séparation sont de couleur "noire". Comme j'ai utilisé un thème sombre, ils devraient donc être blancs (avec un peu d'alpha). c'est le cas pour les téléphones Android 6, mais pas pour Android 5 et Android 4.

J'ai beaucoup essayé de changer la couleur du diviseur mais je n'ai pas pu le faire. J'ai également cherché des solutions sur internet mais rien ne semble fonctionner. Quelqu'un peut-il m'aider avec ce

Répondre

2

Vous pouvez utiliser la méthode setDivider fournie par la classe PreferenceFragmentCompat. Cela va changer le style de votre diviseur. Mais pour utiliser cette méthode, vous devez vous assurer que la vue est créée sinon vous obtiendrez une erreur nullPointer. Le meilleur endroit à faire est de changer le style dans onViewCreated.

Exemple:

@Override 
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) { 
    super.onViewCreated(view, savedInstanceState); 
    setDividerStyle(); 
} 

private void setDividerStyle() { 
    ColorDrawable test = new ColorDrawable(getActivity().getResources().getColor(R.color.your color)); 
    setDivider(test); 
    setDividerHeight(1); 
} 
1

Semble que vous utilisez des thèmes différents pour Android 6 et Android 5 (et 4). L'avez-vous vérifié?

+0

Merci pour votre réponse. J'utilise le même thème pour tous car j'ai juste un fichier styles.xml pour le moment. – Sushil

+0

Quel est le parent du thème utilisez-vous? par exemple le matériel ne va que sur Android 5.0 ou supérieur –

+0

parent du thème est Theme.AppCompat. En effet, le matériel a été introduit sur Android 5.0 et au-dessus. C'est pourquoi j'utilise appcompat librray pour supporter le design marial sur les versions inférieures. La plupart des thèmes de conception de matériel semble bien mais le diviseur ne se présente pas bien. – Sushil