0

我正在尝试将ImageUrl属性挂钩MvxImageView,以实现我自己的图像缓存服务。

我尝试使用PropertyConverter获取值的 a ,但没有收到响应。

然后,我尝试了我自己的实现IMvxImageHelper,但我得到了一个不寻常的行为,因为我使用了一个带有图像的列表,所有图像容器都得到相同的图片,当我滑动列表时,所有MvxImageView小部件中的图片都会发生变化。

此实现位于CreateApp使用RegisterSingleton.

挂钩缓存图像过程的正确方法是什么?

4

1 回答 1

1

如果你想替换整个下载和缓存链,那么提供的最简单的接口是IMvxImageHelper<Bitmap>——预计它被注册为Mvx.RegisterType——这样每个图像视图都会获得一个新的帮助对象。

如果您只想替换部分下载和缓存,则可以改为提供以下实现:

        IMvxHttpFileDownloader
        IMvxImageCache<Bitmap>
        IMvxLocalFileImageLoader<Bitmap>

这些没有可用的文档 - 但这些 api 非常小,源代码可作为参考。


然后,我尝试了自己的 IMvxImageHelper 实现,但我得到了一个不寻常的行为,因为我使用了一个包含图像的列表,所有图像容器都获得相同的图片,当我滑动列表时,所有 MvxImageView 小部件中的图片都会发生变化。

你的图像助手实现或在 IOC 的注册中存在错误。


您可以考虑的另一种选择是ImageView使用自己的ImageUrl属性实现自己的自定义类 - 您不必使用MvxImageView

于 2013-10-31T19:17:10.947 回答