我想允许用户从图像列表中选择背景,用户点击其中一个图像并将该图像用作手机的背景。 我的应用程序应该只是Android默认库的另一个版本。
是否可以通过编程方式设置手机的壁纸?
答案 0 :(得分:57)
首先,您需要在Manifest.xml
文件中设置权限
<uses-permission android:name="android.permission.SET_WALLPAPER"/>
你可以用这个来设置背景:
Button buttonSetWallpaper = (Button)findViewById(R.id.set);
ImageView imagePreview = (ImageView)findViewById(R.id.preview);
imagePreview.setImageResource(R.drawable.five);
buttonSetWallpaper.setOnClickListener(new Button.OnClickListener(){
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
WallpaperManager myWallpaperManager
= WallpaperManager.getInstance(getApplicationContext());
try {
myWallpaperManager.setResource(R.drawable.five);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}});
答案 1 :(得分:9)
您可以使用WallpaperManager class设置壁纸。例如:
WallpaperManager wallpaperManager =
WallpaperManager.getInstance(getApplicationContext());
wallpaperManager.setBitmap(someBitmap);