同封のサンプルでChris BanesのPhotoViewライブラリを使用しようとしています。sample として drawable からではなく、(インターネット上の) URL から画像をロードするように sample にいくつかの変更を加えました。コードは次のとおりです。
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mImageView = (ImageView) findViewById(R.id.iv_photo);
mCurrMatrixTv = (TextView) findViewById(R.id.tv_current_matrix);
//here's the method to load URL image from URL
new LoadImage().execute();
mAttacher = new PhotoViewAttacher(mImageView);
}
private class LoadImage extends AsyncTask<Void, Void, Void> {
@Override
protected Void doInBackground(Void... params) {
// Simulates a background job.
try {
mImageView.setImageDrawable(grabImageFromUrl(image_url));
} catch (Exception e) {
e.getStackTrace().toString();
}
return null;
}
}
private Drawable grabImageFromUrl(String url) throws Exception {
return Drawable.createFromStream((InputStream)new URL(url).getContent(), "src");
}
問題は、画像が読み込まれず、空白のページが返されることでした。そして、ピンチズーム操作をいくつか試してみると、奇妙なことが起こり、画像が読み込まれ、正常に機能しました。誰にも提案がありますか?ありがとう。