将从URL加载的图像设置为墙纸

时间:2014-06-08 09:50:44

标签: android url button wallpaper picasso

我在我的应用程序中使用Picasso,当用户点击它时,我设法在全屏视图中打开图像。现在我想要一个覆盖图像的按钮,并将图像设置为壁纸。 所有图像都从URL加载并存储在远程服务器中。

我不知道如何实现这一点,因为我是一名初学者。有人能帮助我吗?

感谢。

2 个答案:

答案 0 :(得分:0)

使用此代码在onclicklistener按钮上将图片设置为墙纸

        StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
            StrictMode.setThreadPolicy(policy);

            WallpaperManager wpm = WallpaperManager.getInstance(getApplicationContext());
           wpm.suggestDesiredDimensions(width, height);
            InputStream ins = null;
            try {
                ins = new URL(Imageurl).openStream();

                wpm.setStream(ins);
                Toast.makeText(ImageViewerActivity.this, "successfully set", Toast.LENGTH_SHORT).show();
            } catch (IOException e) {
                e.printStackTrace();
            }

答案 1 :(得分:-1)

改为使用ImageLoader

    DisplayImageOptions options = new DisplayImageOptions.Builder()
                    .bitmapConfig(Bitmap.Config.ALPHA_8)
                    .imageScaleType(ImageScaleType.IN_SAMPLE_INT).build();
    ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(
                    ISolaceContext.getAppContext())
                    .discCacheExtraOptions(20, 20, CompressFormat.JPEG, 100, null)
                    .defaultDisplayImageOptions(Media.options).build();
    ImageLoader.getInstance().init(config);
    ImageLoader loader = ImageLoader.getInstance();

    loader.loadImage(url, new SimpleImageLoadingListener() {

       @Override
       public void onLoadingComplete(String imageUri, View view,
                                Bitmap loadedImage) {
          // Now you have the image in your hands as a Bitmap(called: loadedImage) and Now you can do whatever you want with it
          stream.close();
          stream = null;
       }

    });

    loader.clearDiscCache();
    loader.clearMemoryCache();

现在,您可以使用以前生成的位图作为背景。converting bitmap to drawable