Certaines mises en page sont montrées, certaines ont juste un cadre vide et gris. Je n'arrive pas à trouver une corrélation entre les mises en page XML qui fonctionnent et celles qui ne fonctionnent pas. Il existe un mélange d'utilisation de liaison, de mise en forme de contraintes, de complexité et de longueur variables, sans erreur. L'application compile et fonctionne bien.
Aucune suggestion?
Effacer le cache/redémarrer, nettoyer, reconstruire n'a eu aucun effet sur cela
Solution: Une icône d'erreur rouge à côté de la mise en page a été remarquée. Cela avait quelque chose à voir avec le résolveur de ressources id @ 1. J'ai modifié manuellement l'un des identifiants de ressources d'une mise en page. Ce problème en quelque sorte résolu avec le reste des mises en page. Bizarre.
Edit : Il semble que ce problème se reproduise. Changer de thème sur l'aperçu aide cependant. J'essayerais également de changer le mode de prévisualisation en modèle si vous rencontrez des problèmes.
Edit 2 : Je suis allé avec Android Studio 3.2 Canary 9 et les mises en page fonctionnent comme prévu sans problèmes. Je suppose que cela avait quelque chose à voir avec le nouveau-ancien compilateur de liaisons
Edit 3 : Oh mon dieu ... les problèmes ne finissent pas. 3.2 Canary 11 utilise rapidement toute la mémoire donnée lors de la modification de présentations, puis GC continue de perdre tout le temps IDE pour moi. Besoin de redémarrer IDE toutes les 30 minutes. Je finis par revenir à la version 3.1.1 et si les choses ne se chargent pas, je force le rafraîchissement de la présentation comme suggéré dans le commentaire ci-dessous.
je l'ai résolu en changeant la dépendance ci-dessous
de
implementation 'com.Android.support:appcompat-v7:28.0.0-alpha3'
à
implementation 'com.Android.support:appcompat-v7:27.1.1'
J'ai essayé à peu près tout d'en haut et rien ne fonctionnait pour moi ..__ Ensuite, j'ai rétrogradé ma compileSdkVersion
et targetSdkVersion
compileSdkVersion 27
targetSdkVersion 27
Ça a marché! J'ai changé les versions à 28 et cela fonctionne toujours.
Vous pouvez changer votre dépendance dans build.gradle (module)
de
implementation 'com.Android.support:appcompat-v7:28.0.0-alpha3'
à
implementation 'com.Android.support:appcompat-v7:28.0.0-alpha1'
pour Android 3.1.3 je l'ai résolu en changeant les dépendances
de
implementation 'com.Android.support:appcompat-v7:28.0.0-rc02'
à
implementation 'com.Android.support:appcompat-v7:28.0.0-alpha1'
Vérifiez soigneusement que votre fichier de présentation ne contient aucune incompatibilité Créez une nouvelle présentation et ajoutez une vue texte à cette vue et vérifiez si tout va bien, parfois notre présentation contient une erreur qui ne devrait pas s'afficher, veuillez essayer cette méthode une fois et basculez sur "Design" .Cliquez sur "forcer le rafraîchissement de la présentation".
Tout ce que vous avez à faire est d'aller dans le fichier styles.xml et de remplacer votre thème parent de Theme.AppCompat.Light.DarkActionBar
à Base.Theme.AppCompat.Light.DarkActionBar
Ajouter Base au style parent par défaut
Il s'agit d'un bogue dans les dernières versions d'Android Studio. Le seul moyen que j’ai trouvé pour que cela fonctionne consiste à utiliser forçant le rafraîchissement de la présentation .
Ouvrez votre fichier styles.xml
.
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
Il sera montré comme ci-dessus par défaut.
Maintenant, remplacez Thème parent Theme.AppCompat.Light.DarkActionBar
avec
ce Base.Theme.AppCompat.Light.DarkActionBar
Maintenant, l'aperçu sera affiché dans l'aperçu.
Nul besoin de faire autre chose que de changer votre Layout en LinearLayout dans Activity_main.xml
Écran de mise en page Ne s'affiche pas?
Ouvrez simplement Styles.xml depuis --- Res -> Values -> Styles.xml
Remplacer:
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
Avec:
<style name="AppTheme" parent="Base.Theme.AppCompat.Light.DarkActionBar">
Votre affichage viendra immédiatement. Ceci est juste en ajoutant Base.
J'ai essayé à peu près tout d'en haut et rien ne fonctionnait pour moi. Ensuite, j'ai dégradé mes compileSdkVersion et targetSdkVersion
---> compileSdkVersion 27
---> targetSdkVersion 27
et alors
---> implementation 'com.Android.support:appcompat-v7:28.0.0-alpha3'to
---> implementation 'com.Android.support:appcompat-v7:27.1.1'
Le mien a fonctionné en changeant les onglets personnalisés à la version 28.0.0dans mon application
api 'com.Android.support:appcompat-v7:28.0.0' api 'com.Android.support:customtabs:28.0.0'