Picasso 图片在 android 中加载缓慢,为啥?
Posted
技术标签:
【中文标题】Picasso 图片在 android 中加载缓慢,为啥?【英文标题】:Picasso Images are loading slow in android, why?Picasso 图片在 android 中加载缓慢,为什么? 【发布时间】:2016-09-20 19:32:56 【问题描述】:点击几下后,来自 Picasso libery 的图像正在加载到模拟器中,而且速度非常慢。为什么他们加载这么慢?我该怎么做才能让它们加载得更快。我用 png 文件和 jpg 尝试过。
Java 代码
private int a;
ImageView ivImageFromUrl;
protected void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ivImageFromUrl=(ImageView)findViewById(R.id.iv_image_from_url);
public void buttonOnClick(View v)
// do something when the button is clicked
Button button = (Button) v;
a = (byte) (Math.random() * 5);
switch (a)
case 1:
Picasso.with(getApplicationContext()).load("http://icons.iconarchive.com/icons/crountch/one-piece-jolly-roger/72/Luffys-flag-2-icon.png").into(ivImageFromUrl);
break;
case 2:
Picasso.with(getApplicationContext()).load("http://i40.tinypic.com/2i8xait.jpg").into(ivImageFromUrl);
break;
case 3:
Picasso.with(getApplicationContext()).load("http://i41.tinypic.com/2i8xahh.jpg").into(ivImageFromUrl);
break;
case 4:
Picasso.with(getApplicationContext()).load("http://i42.tinypic.com/2i8xahk.jpg").into(ivImageFromUrl);
break;
case 5:
Picasso.with(getApplicationContext()).load("http://i40.tinypic.com/2i8xagp.jpg").into(ivImageFromUrl);
break;
XML
<TextView
android:layout_
android:layout_
android:text="Hello World!"
android:id="@+id/textView2" />
<TextView
android:layout_
android:layout_
android:text="Image text"
android:id="@+id/textView"
android:layout_below="@+id/textView2"
android:layout_centerHorizontal="true"
android:layout_marginTop="82dp" />
<Button
android:layout_
android:layout_
android:text="Image"
android:id="@+id/button"
android:onClick="buttonOnClick"
android:layout_below="@+id/textView"
android:layout_centerHorizontal="true"
android:layout_marginTop="41dp" />
<ImageView
android:layout_
android:layout_
android:id="@+id/iv_image_from_url"
android:layout_alignParentBottom="true"
android:layout_alignRight="@+id/textView"
android:layout_alignEnd="@+id/textView"
android:layout_marginBottom="106dp" />
【问题讨论】:
你的互联网连接速度快吗? 【参考方案1】:如果您的图片太大,则可能需要一些时间。
如果您需要显示个人资料图片,其布局中的尺寸为 350x350,那么为什么要加载完整图片。根据您的要求重新调整图像大小。
Picasso.with(getApplicationContext()).load(filePath).resize(400,400).centerCrop().into(imageView);
【讨论】:
这里的resize参数应该是(400, 400)还是按照你的例子应该是(350, 350)? @user1898712 根据您的要求,它可以是任何尺寸。 @user1898712 如果调整为 350X350,图像质量会非常低,最好使用 400X400。以上是关于Picasso 图片在 android 中加载缓慢,为啥?的主要内容,如果未能解决你的问题,请参考以下文章