2009-09-24 9 views
1

J'ai un écran de préférences assez modeste basé sur PreferenceActivity. (Vous pouvez le voir dans DroidIn app) Je vais avoir quelques problèmes avec ce que je pense avoir à faire avec redessiner l'écran après les mises à jour. Voici les symptômes:Android: Mangled PreferenceActivity view

  1. OnPreferenceChangeListener#onPreferenceChange si je change résumé de la préférence en faisant Preference#setSummary la nouvelle valeur est peinte sur l'ancien créant l'effet disgracieux
  2. Mon écran des préférences est assez grand pour que l'utilisateur doit faire défiler . Pendant le défilement, tout l'écran obtenir tout foiré, encore une fois, il semble comme vue est redessinée (en défilement) sans effacer l'arrière-plan premier.

Les préférences sont définies dans un fichier XML - rien froussard que quelques catégories et préférences imbriquées dans <PreferenceScreen/>

Ai-je besoin de redessiner explicitement la vue? Cela semble excessif - pourquoi cela ne se passerait-il pas par défaut? Puisqu'il s'agit d'une application existante - elle est construite et distribuée avec v. 1.5

P.S. Je tiens également à mentionner que ce comportement se produit dans l'émulateur et sur G1 à la fois 1.1 et 1.5. On dirait que je dois l'enregistrer comme un bug

Répondre

5

Problème résolu! Il s'est avéré que pour une raison quelconque (probablement juste copier un exemple de code sans trop y penser) j'avais cette ligne dans mon theme.xml <item name="android:windowBackground">@null</item>. Une fois que je l'ai enlevé - mon problème de redessiner était parti