Android ImageView Library?のPicassoが使えるんじゃないかって件
https://github.com/square/picasso っていうのがあるのを知り使ってみたんだが、これなかなか使えるのではと
package sample.test;
import android.app.Activity;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.widget.ImageView;
import android.widget.Toast;
import com.squareup.picasso.Callback;
import com.squareup.picasso.Picasso;
import com.squareup.picasso.Transformation;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//setContentView(R.layout.activity_main);
//ImageView imageView = (ImageView)findViewById(R.id.imageView);
ImageView imageView = new ImageView(this);
setContentView(imageView);
Picasso.with(this)
.load("https://dl.dropboxusercontent.com/u/48660384/wordpress/201310092030.jpg")
// エラーが起きた場合にロードする画像を差し替える
.error(R.drawable.ic_launcher)
.fit()
.transform(new Transformation() {
// エラーの場合は発生しない?
@Override
public Bitmap transform(Bitmap bmp) {
/*
fitメソッド等を先に実行する等をした場合にはレイアウトにより
フィットするリサイズされたandroid.graphic.Bitmapが渡される模様
*/
return bmp;
}
@Override
public String key() {
// キャッシュキー?
return "test";
}
})
.into(imageView, new Callback() {
@Override
public void onError() {
Toast.makeText(MainActivity.this, "Error", Toast.LENGTH_LONG).show();
}
@Override
public void onSuccess() {
Toast.makeText(MainActivity.this, "OK", Toast.LENGTH_LONG).show();
}
});
}
}
単純な利用法だけだけど、画像のロードに失敗したりした際に別の画像で差し替えるような場合とかも単純にサポートされているのでそういう処理をごちゃごちゃ実装しなくても良い模様
んまぁ公式にもAdapterを使った例だとかあるからそれ読めば良いんじゃねって事で