2010-12-04 49 views
1

Supposons que je souhaite avoir une certaine image sur l'écran principal de ma carte. En outre, il existe une option de menu qui permet à l'utilisateur de sélectionner une image dans la galerie. Une fois sélectionnée, elle réduit/recadre l'image et la stocke sur le stockage interne de l'application (using something like here). Si je comprends bien, alors l'image persistera même après que l'application soit tuée.où stockez-vous une image par défaut sur le stockage interne d'android?

Maintenant, il ne devrait y avoir qu'une seule image à la fois, donc le fichier image précédent devrait juste être écrasé chaque fois que l'option de menu est exécutée. Cependant, si l'utilisateur ne change pas l'image, il doit toujours y avoir un fichier image par défaut qui s'affiche, où cette image doit-elle être stockée dans mon projet?

Sinon, devrais-je simplement conserver une image par défaut dans mon répertoire de ressources dessinable ou brut, et conserver un indicateur booléen pour savoir s'il est nécessaire de charger une autre image?). Cependant, je devrais m'assurer que la valeur booléenne persiste après la mort de l'application. Peut-être utiliser des préférences partagées?)

Répondre

1

Tout type d'image fournie avec votre application doit figurer dans vos ressources utilisables. Faites simplement glisser un fichier PNG ou JPEG dans votre dossier res/drawables. C'est de loin le moyen le plus facile, et c'est facile à maintenir pour vous. Utilisez BitmapFactory.decodeResource() pour créer un bitmap à partir de cette ressource ou utilisez BitmapFactory.decodeFile() si cette image personnalisée est disponible.

Je ne connais pas votre application, donc je ne sais pas comment vous décidez d'utiliser ou non l'image par défaut ou personnalisée. Vous pouvez vérifier l'existence du fichier, si c'est un critère valide, ou vous pouvez utiliser un booléen dans les préférences partagées comme vous l'avez suggéré.