как установить ресурс изображения TouchImageView с URL вместо drawable

#android #touchimageview

#Android #touchimageview

Вопрос:

У меня есть этот код, который работает с изображением в drawable-ресурсе, и я размышлял, как бы я переписал его для URL-изображения:

 import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;

public class MultiTouchActivity extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //setContentView(R.layout.activity_main);

        TouchImageView img = new TouchImageView(this);
        img.setImageResource(R.map);
        img.setMaxZoom(6f);
        setContentView(img);
    }
}
  

Ответ №1:

Вам придется самостоятельно загрузить удаленное изображение.

Вы могли бы сделать это вручную:

 new AsyncTask {
    Bitmap doInBackground(Void[] params) {
        InputStream in = new java.net.URL(image_url).openStream();
        return BitmapFactory.decodeStream(in);
    };

   void onPostExecute(Bitmap bmp) {
       imageView.setImageBitmap(bmp);           }
   }
}.execute();
  

Или используйте Picasso и получите преимущество простоты и локального кэширования:

 Picasso.with(context).load("http://i.imgur.com/DvpvklR.png").into(imageView);
  

Другие библиотеки, которые хорошо справляются с загрузкой и кэшированием удаленных изображений: