我正在使用毕加索将一些图像从联机加载到listView中。问题是,虽然一些图像被成功加载,但有些只是简单的消失。毕加索无法加载某些URL的图像(无特殊字符)
成功(成功显示品牌形象):
失败(无品牌形象所示,失败):当它失败
的ImageView的消失。这里是我的代码:
Picasso.with(mContext)
.load(UrlEncoder.encode(interiorDesign.getBrand_image_url()))
.config(Bitmap.Config.RGB_565)
.error(R.drawable.blank)
.fit()
.centerInside()
.into(holder.brand);
这里是我的.xml文件:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="90dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:layout_alignParentLeft="true"
android:gravity="center_vertical"
android:orientation="horizontal">
<RelativeLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:paddingRight="10dp">
...
</RelativeLayout>
<ImageView
android:layout_width="200dp"
android:layout_height="90dp"
android:paddingBottom="10dp"
android:id="@+id/partial_interior_design_brand" />
</LinearLayout>
我已经检查了它,因为它捕获在毕加索的错误()方法的错误失败。
Here是失败的链接。
Here是另一个失败的链接。
Here是一个成功的链接。
这个问题发生在我身上好几次了。我怀疑问题在于fit()和centerInside()方法,因为在我删除这两个方法之后,问题就解决了。然而,如果没有这两种方法,我的图像根本不适合这个尺寸。
只要使用这个毕加索.with(mContext).load(interiorDesign.getBrand_image_url()).config(Bitmap.Config.RGB_565) .error(R.drawable.blank) .fit() .centerInside() .into(holder.brand); – 2015-02-10 10:07:15
我测试过了。它不起作用。我切换到通用图像加载器,最终解决了问题。我不知道毕加索出了什么问题。我遇到过这样的问题很多。 – Derekyy 2015-02-10 16:26:56
那么你切换到一个更好的图书馆:) – 2015-02-11 06:34:40