2013-04-13 7 views
1

Donc, il semble que je cours un problème sur un programme Android que j'écris. Je suis toujours un noob, alors s'il vous plaît aidez-moi à comprendre le problème et comment je peux résoudre mon problème. Je crée un jeu simple et je fais tous les dessins graphiques pour cela. Mes images sont 1024x1024 ou 1024x512 avec une résolution de 300 pixels/pouces. Oui, je comprends que je suis probablement en train de le faire. Je veux juste que les graphismes soient vraiment clairs et beaux. Tous les graphiques sont dans le dossier drawable pas dans hdpi, ldpi, mdpi, xhdpi ou xxhdpi dossiers drawable. Maintenant, le problème que j'ai est que mon application fonctionnait bien jusqu'à ce que j'ai ajouté une autre image 1024x1024 dans le dossier drawable. Maintenant, l'application tombe en panne juste quand elle essaie de charger une image. Le problème que je reçois est la mémoire sur le flux. Peu importe quelle activité s'exécute, il semble qu'une fois qu'il atteint une limite de chargement des images, il se bloque. J'ai lu la page de résolution android http://developer.android.com/guide/practices/screens_support.html mais peut-être mon anglais n'est pas assez bon pour comprendre. Dois-je redimensionner les images à chaque résolution (hdpi, ldpi, mdpi, xhdpi et xxhdpi)? Lorsque je passe d'une activité à une autre dans mon application, dois-je effacer les images dans l'activité précédente pour effacer la mémoire? S'il vous plaît aidez-moi à comprendre comment cela fonctionne.Android Limitation de la taille de l'image

Merci David

Répondre

0

Je pense que vous avez le budget vm sur error.I face à ce problème tout en travaillant sur ma demande précédente. Après la recherche, j'ai trouvé la solution du guide des développeurs ... fallow this link espérons que cela résout votre problème.Merci

4

Ironiquement, la méthode que vous utilisez est probablement rendre vos images plus mauvaises. Lorsque vous placez des images raster dans le dossier pouvant être tracé à la racine, elles sont supposées être mdpi et seront agrandies pour les autres densités.

Cela signifie que votre bitmap 1024x1024 est mis à l'échelle et inséré en tant que bitmap 2048x2048 (qui dans la plupart des cas est beaucoup plus grand que vous avez probablement besoin). Alors oui, votre meilleur pari est de faire les images quelle que soit la taille dont ils ont besoin pour une densité particulière, et de créer des images séparées dans chaque dossier drawable que vous devez prendre en charge.

À noter également, peu importe la résolution (vous avez mentionné 300 ppp) à laquelle vous avez défini vos images, la seule chose qui compte est les dimensions en pixels.

+1

une autre solution consiste à mettre des images dans le dossier 'drawable-nodpi' –

+0

Vrai, si l'échelle de l'image n'a pas d'importance, c'est une bonne solution. – kcoppock

+0

Ce qui me déroute, c'est que je ne sais pas quelle densité je dois supporter. Je fais en sorte que mon application soit compatible avec toutes les tailles d'écran. Toutes les tailles d'objets sont calculées en fonction de la taille de l'écran du téléphone. Donc je ne sais pas ce que sizei devrait faire mes images. Cela a-t-il du sens? – David

Questions connexes