android - 如何从imageview设置壁纸

标签 android android-imageview wallpaper android-gridview

我仍然找不到设置从 ImageView 获取的图像的墙纸的方法。 谁能告诉我如何从 android ImageView 设置手机壁纸?

这是我的代码:

ImageView 布局:

<ImageView
    android:contentDescription="My Wallpaper"
    android:id="@+id/full_image_view"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:saveEnabled="true"
    />

ImageView 上的 Activity

请注意,FullImageActivity 中显示的图像是在用户单击项目后从图像 GridView 获取的。

public class FullImageActivity extends Activity {

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.full_image);

    // get intent data
    Intent i = getIntent();

    // Selected image id
    int position = i.getExtras().getInt("id");
    ImageAdapter imageAdapter = new ImageAdapter(this);

    ImageView imageView = (ImageView) findViewById(R.id.full_image_view);
    imageView.setImageResource(imageAdapter.mThumbIds[position]);
}
}

我想在用户触摸屏幕后从上面的 Activity 中的图像设置墙纸我会弹出询问用户是否要将其设置为墙纸。

最佳答案

您需要创建一个位图然后将其设置为墙纸

            Bitmap mBitmap = BitmapFactory.decodeResource(getResources(), IMAGE_ID);
            WallpaperManager myWallpaperManager = WallpaperManager
                    .getInstance(getApplicationContext());

            try {
                myWallpaperManager.setBitmap(mBitmap);
                Toast.makeText(SetWallPaper.this, "Wallpaper set",
                        Toast.LENGTH_SHORT).show();
            } catch (IOException e) {
                Toast.makeText(SetWallPaper.this,
                        "Error setting wallpaper", Toast.LENGTH_SHORT)
                        .show();
            }

其中 IMAGE_ID 是您的可绘制对象的资源 ID,例如R.drawable.imagename

关于android - 如何从imageview设置壁纸,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10978442/

相关文章:

c# - 如何设置多个桌面背景(双显示器)

transparency - iOS 7 - 将用户壁纸显示为 UIWindow 背景

java - 当我尝试更新 onPostExecute(...) 方法中的字段时,Android 应用程序崩溃

android - 为 google play 服务设置 gradle 文件

java - Android logcat 停止中线

android - 在 android ListView 中播放暂停切换

Android - Imageview 在所有屏幕分辨率的中心

android - 如何显示在Android中从相机最后捕获的图​​像?

java - 从文件路径设置壁纸

android - 将不同的 ViewModel 传递给包含布局