人々が画像(描画可能)を選択できるアプリを作成し、「背景として設定」ボタンを押すと、選択した画像が携帯電話の背景として中央に表示されます。
次のコードは正常に動作していました。画像が中央に配置されました。ただし、オペレーティング システム (> api 13) では減価償却されます。画像が中央に配置されるように修正する方法を知っている人はいますか (または、必要に応じて画面に合わせて拡大縮小されますか)。
「displaymetrics」または「points」に置き換えて w または h を取得しようとしましたが、画像を中央に配置するのに役立ちません。もうやらないのは「suggestDesiredDimensions」ですか?
ResID は、必要なドローアブルの識別子です。
誰でもこれを処理する方法を知っていますか? ありがとう!
public void setBackground(View v)
{
try {
// Set background from a resource
WallpaperManager.getInstance(this).setResource(resID);
WallpaperManager wm = (WallpaperManager) getSystemService(WALLPAPER_SERVICE);
Display display = getWindowManager().getDefaultDisplay();
int w = display.getWidth(); // deprecated
int h = display.getHeight(); //deprecated
wm.suggestDesiredDimensions(w, h);
}
catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}