动态生成的imageview不显示在android中使用毕加索加载的图像

动态生成的imageview不显示在android中使用毕加索加载的图像,android,imageview,picasso,Android,Imageview,Picasso,我正在尝试使用毕加索将图像加载到自定义的图像视图。 ImageView是动态生成的。我的问题描述如下: 如果我动态生成六个ImageView,则仅在第六个ImageView上设置图像,而在前五个ImageView上不显示任何内容 有人能告诉我如何在所有6个图像上设置图像吗。我的代码如下: for(int i=0;i<6;i++) { imv = new RoundedImageView(Home.this); imv.setId(i); imv.setTag(i)

我正在尝试使用毕加索将图像加载到自定义的
图像视图
。 ImageView是动态生成的。我的问题描述如下:

如果我动态生成六个ImageView,则仅在第六个ImageView上设置图像,而在前五个ImageView上不显示任何内容

有人能告诉我如何在所有6个图像上设置图像吗。我的代码如下:

for(int i=0;i<6;i++) {

    imv = new RoundedImageView(Home.this);
    imv.setId(i);
    imv.setTag(i);
    Picasso.with(Home.this).load( url ).into(target);
    layout.addView(imv);
}

private Target target = new Target() {

    @Override
    public void onBitmapLoaded(final Bitmap bitmap, final Picasso.LoadedFrom from) {

        Bitmap resized = Bitmap.createScaledBitmap(bitmap, 50, 50, true);
        BitmapDrawable bdrawable = new BitmapDrawable(resized);
        imv.setBackground(bdrawable);
    }
for(int i=0;i更改为:

Picasso.with(Home.this).load( url ).into(imv);

好的,您正试图使用一个目标将6个图像加载到6个不同的视图中。您希望如何工作?一个目标将为单个图像加载提供一个任意侦听器。您需要6个图像。请进行计算。:)我应该为此添加6个目标吗?有没有办法过于动态地生成目标?这是一种选择。不过,在加载回调(发生在ui线程上)中执行位图操作可能并不理想。更好的方法是使用毕加索的特征。在你的情况下,这将是一个单一的班轮,但。但是,如果你可以简单地调用毕加索.with(Home.this).load(url).resize(50,50).into(imv)
(也可以选择指定比例类型),为什么还要重新发明轮子呢这并不能真正回答问题,因为它不再缩放位图。