如何在android中取消片段转换后的毕加索请求

如何在android中取消片段转换后的毕加索请求,android,android-fragments,picasso,Android,Android Fragments,Picasso,我有一个带有gridview的片段,它使用一个适配器同时加载20个图像。我想确保未完成的毕加索请求在片段消失/处理后优雅地终止 问题: 这是由毕加索框架自动处理的(所以我不必担心) 如何在dispose上实现取消所有Picasso请求 与毕加索非常相似(他们有几乎相同的API),并为请求提供生命周期绑定 您只需调用Glide.with(fragment).load(…).into(imageView) 你有一篇关于Glide和Picasso之间区别的好文章。与Picasso非常相似(他们有几乎相

我有一个带有gridview的片段,它使用一个适配器同时加载20个图像。我想确保未完成的毕加索请求在片段消失/处理后优雅地终止

问题:

  • 这是由毕加索框架自动处理的(所以我不必担心)
  • 如何在dispose上实现取消所有Picasso请求 与毕加索非常相似(他们有几乎相同的API),并为请求提供生命周期绑定

    您只需调用
    Glide.with(fragment).load(…).into(imageView)

    你有一篇关于Glide和Picasso之间区别的好文章。

    与Picasso非常相似(他们有几乎相同的API),并为请求提供生命周期绑定

    您只需调用
    Glide.with(fragment).load(…).into(imageView)


    你有一篇关于Glide和毕加索的不同之处的好文章。

    如果你想按照你的要求执行任何操作,你必须做如下事情

    Picasso.with(context)
    .load("http://some.example.com")
    .tag(YourTag)
    .into(YourImageView)
    
    当您想要恢复时,请在onResume()中调用

    要暂停时,请在onPause()中调用

    如果要取消,请在onStop()或onDestroy()中调用


    如果你想像你要求的那样执行任何操作,你必须做如下的事情

    Picasso.with(context)
    .load("http://some.example.com")
    .tag(YourTag)
    .into(YourImageView)
    
    当您想要恢复时,请在onResume()中调用

    要暂停时,请在onPause()中调用

    如果要取消,请在onStop()或onDestroy()中调用


    我想详细说明@Akbar的答案,因为我没有“毕加索”的例子,所以我无法让它工作。 这是我的解决方案。以相同的方式初始化,然后取消:

    Picasso.with(context).cancelRequest(YourImageView);
    
    奖金: 如果您在获取上下文方面遇到问题(我知道我有),或者想知道它是什么,您可以在一个片段中执行此操作:

    Context context = getView().getContext();
    

    希望它有帮助

    我想详细说明@Akbar的答案,因为我没有“毕加索”的例子,所以我无法让它工作。 这是我的解决方案。以相同的方式初始化,然后取消:

    Picasso.with(context).cancelRequest(YourImageView);
    
    奖金: 如果您在获取上下文方面遇到问题(我知道我有),或者想知道它是什么,您可以在一个片段中执行此操作:

    Context context = getView().getContext();
    
    希望能有帮助