ピカソを実装していますので、画像をダウンロードしてsdカートに保存することができます。ターゲットに一度移動すると4回移動します。ピカソ/ターゲット
私はfor
ループがあります:私はコメントし
private Target target = new Target() {
@Override
public void onBitmapLoaded(final Bitmap bitmap, Picasso.LoadedFrom from) {
//new Thread(new Runnable() {
//@Override
//public void run() {
/*
File file = new File(Environment.getExternalStorageDirectory().getAbsoluteFile(),caminho);
try
{
file.createNewFile();
FileOutputStream ostream = new FileOutputStream(file);
bitmap.compress(Bitmap.CompressFormat.JPEG, 75, ostream);
ostream.close();
}
catch (Exception e)
{
e.printStackTrace();
}*/
try {
verifyStoragePermissions(AtividadePrincipal.this);
String root = Environment.getExternalStorageDirectory().toString();
File myDir = new File(root + "/imagensDaApp");
myDir = new File(myDir, caminho);
if (!myDir.exists()) {
myDir.getParentFile().mkdirs();
//myDir.createNewFile();
}
FileOutputStream out = null;
out = new FileOutputStream(myDir);
bitmap.compress(Bitmap.CompressFormat.JPEG, 90, out);
out.flush();
out.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
//}
//}).start();
}
@Override
public void onBitmapFailed(Drawable errorDrawable) {
}
@Override
public void onPrepareLoad(Drawable placeHolderDrawable) {
if (placeHolderDrawable != null) {
}
}
};
:
for (int i = 0; i < listaProdutos.size(); i++) {
caminho =listaProdutos.get(i).getImagem();
Picasso.with(getApplicationContext()).load("URL"+listaProdutos.get(i).getImagem()).into(target);
}
をしかし、私は一度だけターゲットに取得し、forループの最後の1、
ターゲットコードあなたがコメントを外すことができないようにしたい場合は、同じかどうかで同じことをするからです。
私はそれについてalredyの検索を持っていますが、私はこの問題の答えを見つけることができませんでした。すべてのURLはOKです!
私はこれを3日間行っており、それは同じままです。
はいlistaProdutos.size()= 4; とすべてのURLは大丈夫です!
質問が分かりませんでしたら、どうぞ。
ピカソ自体が重複したターゲットでリクエストをフィルタリングすると思います。 –
@VladMatvienkoしかしこの場合は4ですが、ユーザーが5または6を追加したいと思うかもしれませんが、どれくらいの数があるか分かりません。 –
新しいターゲットを作成する必要がありますサイクル内。このようにして、必要なだけ作成します。 –