2014-06-08 283 views
0

我在我的應用程序中使用畢加索,並且設法在用戶點擊時在全屏視圖中打開圖像。現在我想要一個覆蓋圖像並將圖像設置爲壁紙的按鈕。 所有圖像都從URL加載並存儲在遠程服務器中。將設置圖像從URL加載爲壁紙

我不知道如何實現這一點,因爲我是一個veely初學者。有人能幫我嗎?

謝謝。

+0

我簡化了我的答案代碼,以防萬一你在第一時間發現它更復雜 –

回答

-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

+0

非常感謝!那麼你是否建議我應該使用UIL而不是畢加索? –

+0

@FedericoMoretto是的,我認爲你應該使用它,因爲它使你能夠處理結果位圖(因爲它會被加載到你的應用程序中)而不能直接分配它,而不能以不同的方式處理它 –

+0

@JakeWharton這不是我的工作,你不明白它 –