2017-03-12 24 views
0

URLから画像をダウンロードしてカスタムビューに表示します。 setImageBitmapメソッドを解決できません。 URLからカスタム画像ビューに画像を表示するにはどうしたらいいですか?私のカスタムビューの名前はMemeEditorViewです。 PicassoGlideなどのカスタムビューを使用してsetImageBitmapメソッドを解決できません

import android.graphics.Bitmap; 
import android.graphics.BitmapFactory; 
import android.os.AsyncTask; 
import android.util.Log; 

import com.dragedy.dream.view.MemeEditorView; 

import java.io.InputStream; 

/** 
* Created by Jai Mahlawat on 3/12/2017. 
*/ 

class ImageDownloader extends AsyncTask<String, Void, Bitmap> { 
    MemeEditorView memeEditorView; 

    public ImageDownloader(MemeEditorView memeEditorView) { 
     this.memeEditorView = memeEditorView; 
    } 

    protected Bitmap doInBackground(String... urls) { 
     String url = urls[0]; 
     Bitmap mIcon = null; 
     try { 
      InputStream in = new java.net.URL(url).openStream(); 
      mIcon = BitmapFactory.decodeStream(in); 
     } catch (Exception e) { 
      Log.e("Error", e.getMessage()); 
     } 
     return mIcon; 
    } 

    protected void onPostExecute(Bitmap result) { 
     memeEditorView.setImageBitmap(result); 
    } 
} 
+0

'MemeEditorView extends ImageView'は本当ですか? –

+0

@ MikeM.it extends view –

+1

'View'には' setImageBitmap() 'メソッドがありません。 'ImageView'が提供する画像スケーリングが必要な場合は、自分で実装するか、代わりに' ImageView'を拡張してください。 –

答えて

0

ライブラリは、あなたが何をしたい達成が容易になります。

例えば、ピカソ使用:ピカソとグライドを使用

Picasso.with(context).load("//**Your URL Here**//").into(MemeEditorView); 

はまた、クロッピング、キャッシュに役立つサイズ変更および他の画像特徴。

0

MemeEditorViewがImageViewを拡張していることを確認する必要があります。そうしないと、おそらくsetBackgroundメソッドを使用する必要があります。

関連する問題