我已经尝试使用MvxHttpImageView这样@H_404_3@
<Mvx.MvxHttpImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/iconeView" local:MvxBind="{'ImageUrl':{'Path':'ImgSrc'}}" />
同@H_404_3@
public string ImgSrc { get {return "@res/drawable/icon.png"; } }
我已经尝试了其他几个ImgSrc,仍然没有任何结果.@H_404_3@
icon.png在我的Resources / Drawable目录中,是一个AndroidResource@H_404_3@
任何帮助将是伟大的!
谢谢@H_404_3@
解决方法
可悲的是,它不知道如何从资源加载@H_404_3@
但是,有一些方法来获取图像来加载静态内容.@H_404_3@
>你可以写你自己的自定义绑定
>您可以使用标准的imageview,存储在android资源中的图像和mvx内置的“AssetImagePath”绑定.@H_404_3@
要尝试第一个,请查看会议示例 – 最喜爱的按钮背景如何绑定到IsFavorite@H_404_3@
做第二个:@H_404_3@
>包括资产文件夹中的图标 – 例如/assets/icon1.png
>确保构建操作设置为AndroidAsset
>在XML中使用标准的ImageView和绑定文本,如{‘AssetImagePath’:{‘Path’:’WhichAsset’}}@H_404_3@
在实际使用中,我通常还使用一个转换器,它将一个viewmodel属性(如State)映射为一个值为LoadState.Loading的资源映像路径,如“/loadingimages/loading.png”@H_404_3@
您可以在https://github.com/slodge/MvvmCross/blob/master/Cirrious/Cirrious.MvvmCross.Binding/Android/Target/MvxImageViewDrawableTargetBinding.cs中看到资产绑定的代码@H_404_3@