2011-11-10 3 views
0

Dans le cadre de cette application, je fais, je veux changer mon fond d'écran sur mon appareil Android basé sur un bitmap que l'utilisateur a sélectionné.Android - Définir un bitmap comme fond d'écran

Je suis capable de changer l'arrière-plan. Cependant, l'arrière-plan est une version complètement déformée de l'image bitmap. ? Toute idée pourquoi cela se passerait-il ici mon code:

Bitmap bitmap = ((BitmapDrawable)currentDrawable).getBitmap(); 
this.setWallpaper(bitmap); 

Mon bitmap a une largeur de 240 pixels et une hauteur de 180px. Mon émulateur est d'une taille 480px par 800px.

Je peux redimensionner mon bitmap à 480px. Cependant, le bitmap finit toujours par être déformé sur le fond d'écran android. Des pensées sur la façon dont cela peut être réparé?

Merci à l'avance

Répondre

1

Vous devez créer plusieurs images, pour chaque résolution potentielle (et commune). Vous ne voulez pas d'échelle ou l'image sera déformée.

MISE À JOUR:
est ici une tonne de bonnes informations sur support tailles d'écran: http://developer.android.com/guide/practices/screens_support.html

+0

Hey Dave, dites-vous que si je finis par faire le bitmap de la même taille de la résolution de l'écran android, il n'y aura pas de distorsion? – roro

+0

@roro: C'est correct. Cela signifie que vous devez inclure plusieurs résolutions, ou vous pouvez créer une image à la plus grande résolution que vous prévoyez rencontrer. La réduction ne causera probablement pas autant de distorsion, mais elle peut en causer. Regardez aussi dans "dx" au lieu de "px" - "dx" est des pixels "indépendants du périphérique". –

0

Le fond d'écran utilisé par le défaut de lancement est plus grand que l'écran réel, c'est la raison pour laquelle vous pouvez faire défiler le contenu et la fond d'écran aussi.

Questions connexes