Android用作壁纸功能
我正在开发一个应用程序,里面有一个图像库。当我选择一个图像时,它会在Android用作壁纸功能,android,wallpaper,Android,Wallpaper,我正在开发一个应用程序,里面有一个图像库。当我选择一个图像时,它会在图像视图中的另一个片段中打开(android:id=“@+id/gallery\u image”),并以全屏模式显示 一切正常。但我需要将该图像设置为设备壁纸的功能。打开图像后,当用户按下菜单按钮时,选项菜单将仅显示一个名为“用作墙纸”的菜单项。单击该项后,android设置为墙纸的默认意图(可能是android.intent.action.set_wallpaper)将为用户提供一个选项,可以将该图像设置为该设备的墙纸。裁剪或
图像视图中的另一个片段中打开(android:id=“@+id/gallery\u image”
),并以全屏模式显示
一切正常。但我需要将该图像设置为设备壁纸的功能。打开图像后,当用户按下菜单按钮时,选项菜单将仅显示一个名为“用作墙纸”的菜单项。单击该项后,android设置为墙纸的默认意图(可能是android.intent.action.set_wallpaper
)将为用户提供一个选项,可以将该图像设置为该设备的墙纸。裁剪或其他壁纸设置功能将由android处理
我不知道如何打开墙纸设置意图,同时将该图像传递给该意图设置为墙纸。请给我一些工作代码的例子。或者有更好的方法吗?更新:
要将图像传递到本机墙纸应用程序,请执行以下操作:
Intent intent = new Intent(Intent.ACTION_SET_WALLPAPER);
startActivity(Intent.createChooser(intent, "Select Wallpaper"));
您可以在应用程序的contextMenu
中创建一个项目作为设置为墙纸
,当用户点击该项目时,您使用此代码
调用此方法将所选图像设置为壁纸:
public void setWallpaper() {
Context context = this.getBaseContext();
Bitmap mBitmap = BitmapFactory.decodeResource(getResources(),mImageIds[pos]);
context.setWallpaper(mBitmap);
}
并在Android清单
文件中添加此权限:
<uses-permission android:name="android.permission.SET_WALLPAPER" />
谢谢您的回答。实际上,我知道如何将图像设置为壁纸。但我想将该图像传递给android墙纸设置器intent(当您按下菜单按钮并显示“使用为”/“设置为”项目时,您会看到),然后android将完成其余操作(如提供裁剪选项和设置墙纸)。@KaidulIslamSazal更新了答案。啦啦队不应该起作用。您只需打开SET_WALLPAPER
操作,不传递该图像<代码>设置壁纸
只需打开可能的操作,从gallery中选择要设置壁纸的图像即可。我只想把这张图片传递给那个种情况,当一张图片被选择裁剪并设置为墙纸时,它会自动完成。试着让它不工作。它给了我从图库中选择图像的选项。