J'ai un fichier XML assez simple qui a un bouton d'image. L'image montre une amende sur la disposition graphique XML Designer, apparaît bien lorsque j'exécute une construction de développement, mais dès que je crée le fichier APK signé et l'exécuter, l'image ne se présente plus. C'est juste un bouton vide. Je ne peux pas penser à une raison pour laquelle, des idées? Le fichier XML ressemble à ceci: p> L'image @ drables / chapitre code> est un fichier png assez petit (41 * 41) qui est dans le dossier RES / Drapable. P> p>
7 Réponses :
Essayez de mettre l'image dans le dossier digue-HDPI et Dossable-MDPI Dépend du périphérique que vous exécutez de votre application, l'image est recherchée dans ces dossiers ...
mais la mise sous sable signifie que l'image doit être disponible partout, mais sométhimes (dépend de vos paramètres manifestes) Cela pourrait ne pas être vrai, Je veux dire que vous pouvez tourner du mode de compatibilité. P>
Vous pouvez également essayer de dialiquez le temps d'exécution pour régler l'image sur la vue P>
iv.setImageResource(R.drawable.somethig);
Je ne veux pas le mettre dans un dossier de densité d'écran spécifique car je veux que tous les appareils puissent utiliser l'image sans faire des copies. Réglage de l'image Dynamiquement n'a rien changé, cela ne s'affiche toujours pas sur la construction signée. Merci d'avoir essayé si Luk.
On dirait que ceci est un bug avec Android, où parfois la première image du dossier digue ne s'affiche pas. Ajout d'une image factice appelée aaaa.png au dossier digue et à un problème a été résolu. Trouvé la réponse ici: ImageButton n'indique pas un / p>
avait le même problème et résolu en supprimant tous les caractères spéciaux. Dans mon cas, c'était des tirets '-' dans le nom de fichier: p>
arrière-plan-720.png => arrière-plan.png code>. p>
Ma situation était weird.Toutes-toi était correcte jusqu'à ce que l'intégration de l'accident de Firebase à ma demande. p>
Je viens d'ajouter compile tellement ajouté je m'interroge toujours sur la relation d'accident de Firebase rapportant à la même chose. em> p>
Utilisation de gauche / droite au lieu d'attributs de démarrage / de fin en utilisant la gravité # à gauche
et la gravité # droit peut conduire à des problèmes lorsqu'une mise en page est rendue dans
les lieux où le texte coule de droite à gauche. Utilisez la gravité # Démarrer et
Gravity # fin à la place. p>
De même, dans XML Gravity et Layout_gravity Attributs, utilisez le début
plutôt que de gauche. Pour les attributs XML tels que PaddingLeft et
Layout_marginleft, utilisez PaddingStart et Layout_MarginStart. p>
REMARQUE: Si votre MINSDKVersion a moins de 17 ans, vous devez ajouter à la fois le
Attributs plus grands gauche / droit ainsi que les nouveaux attributs de début / droit.
Sur les plateformes plus anciennes, où RTL n'est pas prise en charge et le début / droite
Les attributs sont inconnus et donc ignorés, vous avez besoin des plus âgés
Attributs de gauche / droit. p>
Il existe un chèque de peluche séparé qui attrape ce type d'erreur.
(Remarque: pour la gravité # Gauche et Gravity # Start, vous pouvez utiliser ces constantes.
Même lors de la ciblage des plateformes plus anciennes, car le point de départ est un
Superset du bitmask de gauche. Par conséquent, vous pouvez utiliser Gravity = "Démarrer"
plutôt que la gravité = "gauche | start".) p>
blockQuote> 'com.google.firebase: Firebase-Crash: 11.0.1' Code> & Drawableleft a disparu strong>. Quand j'ai traversé le XML, remarqua un avertissement (En doublé ci-dessous). p>
Android: DrawaBableStart Code> & Émission parti. strong> p>
Vérifiez votre taille d'image. Si vous utilisez un actif inutilement important lorsque vous l'avez déployé, il ne peut tout simplement pas montrer malgré l'approche de la concepteur. P>
Eh bien! Dans mon cadre de cas J'avais l'image de digue. Il travaillait assez bien dans la version de débogage, mais après la version de la version de APK, il appartenait parfois à Image ImageView. P>
** p>
Voir les captures d'écran P>
blockQuote>
** p>
espère que cela peut aider n'importe qui. em> p> minisciable
RétrécitResources True Code> Strong> P>
Une des raisons est p>
Si vous utilisez le fichier android.support.v7.widget.appcompatbutton p>
blockQuote>
au lieu de p>
bouton p>
blockQuote>
Vue simple comme vecteur code> comme étiez à gauche ou à droite, vous devez utiliser. P>
Bouton, TextView CODE> ne prend pas en charge Vecteur code> sous forme de Diable à gauche droite code> dans mon cas p>