2014-07-09 59 views
0

我正在開發一個應用程序,其中有一個選項可以在每個屏幕中設置爲壁紙(每個屏幕都有不同的圖像)。問題是,當我按set作爲壁紙選項時,圖像不適合屏幕尺寸。這裏是我的代碼片段:wallpapermanager,圖片不適合屏幕尺寸。該怎麼辦?

wbutton.setOnClickListener(new Button.OnClickListener(){ 

    @Override 
    public void onClick(View arg0) { 
     Toast.makeText(getApplicationContext(), 
       "Wallpaper set", Toast.LENGTH_LONG).show(); 
    // TODO Auto-generated method stub 
    WallpaperManager myWallpaperManager 
    = WallpaperManager.getInstance(getApplicationContext()); 
    try { 
    myWallpaperManager.setResource(R.drawable.two); 
    } catch (IOException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
    } 

請建議修改代碼,以便我可以解決問題。

回答

0

試試這種方式,希望這會幫助你解決你的問題。

wbutton.setOnClickListener(new Button.OnClickListener(){ 

    @Override 
    public void onClick(View arg0) { 
    Toast.makeText(getApplicationContext(),"Wallpaper set", Toast.LENGTH_LONG).show(); 
    DisplayMetrics metrics = new DisplayMetrics(); 
    getWindowManager().getDefaultDisplay().getMetrics(metrics); 
    int height = metrics.heightPixels; 
    int width = metrics.widthPixels; 
    WallpaperManager myWallpaperManager = WallpaperManager.getInstance(getApplicationContext()); 
     try { 
     myWallpaperManager.setResource(R.drawable.two); 
     myWallpaperManager.suggestDesiredDimensions(w, h); 
     } catch (IOException e) { 
     e.printStackTrace(); 
     } 
    } 
}); 

記住添加權限:

<uses-permission android:name="android.permission.SET_WALLPAPER_HINTS"/> 
<uses-permission android:name="android.permission.SET_WALLPAPER"/>