2014-07-09 3 views
0

각 화면마다 배경 화면으로 설정할 수있는 앱을 개발 중입니다 (각 화면마다 이미지가 다릅니다). 배경 화면으로 설정을 누르면 이미지가 제대로 표시되지 않습니다. 화면 크기. 다음은 내 코드 스 니펫입니다.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"/> 
관련 문제