Android 取景器预定位

Android 取景器预定位,android,image,picasso,viewswitcher,imageswitcher,Android,Image,Picasso,Viewswitcher,Imageswitcher,我目前正在开发一个幻灯片应用程序,它可以在自己的ImageSwitcher实现中显示多个带有动画的图像。在显示ImageSwitcher之前,我使用fetch()预加载(缓存)毕加索的图像 应加载下一个图像时,将调用以下方法: public void setImageSource(final String url) { final ImageView image = (ImageView) this.getNextView(); image.setVisibility(View.

我目前正在开发一个幻灯片应用程序,它可以在自己的ImageSwitcher实现中显示多个带有动画的图像。在显示ImageSwitcher之前,我使用
fetch()
预加载(缓存)毕加索的图像

应加载下一个图像时,将调用以下方法:

public void setImageSource(final String url) {
    final ImageView image = (ImageView) this.getNextView();
    image.setVisibility(View.VISIBLE);

    BitmapDrawable drawable = (BitmapDrawable) image.getDrawable();
    if (drawable != null && drawable.getBitmap() != null) {
        drawable.getBitmap().recycle();
    }

    PicassoUtils.getPicassoWithBasicAuthorizationFrom(user, getContext())
            .load(url)
            .noFade()
            .fit()
            .centerCrop()
            .into(image);

    showNext();
}
需要
image.setVisibility(View.VISIBLE)
使毕加索能够读取ImageView的尺寸。为了节省内存,需要循环使用,因为当我不循环使用imageView时,每个图像开关上的内存都会增加

但我有一个大问题。图像之间的时间间隔是固定的,毕加索需要一些时间将图像(甚至从本地缓存)加载到imageView中,因此我有一点延迟


问题是,我如何预装下一幅图像?

也许我听不懂你的意思,我的英语有点问题,但为什么你不在切换后使用AsyncTask在后台加载下一幅(或两幅)图像呢。虽然从下一个位图中至少有一个未加载到后台,但用户不必切换图像。也许我不理解您的意思,我的英语有一些问题,但为什么您不在切换后使用AsyncTask在后台加载下一个图像(或两个图像)。虽然从下一个位图中至少有一个未加载到后台,但用户不必切换图像。