xamarin – 如何在MvvmCross中动态更改图像

xamarin – 如何在MvvmCross中动态更改图像,第1张

概述我在资源文件夹中有两个图像 1)ImgMsg_Normal.png 2)ImgMsg_Grey.png in Layout file:<ImageView android:id="@+id/imgMsg" android:src="@drawable/ImgMsg_Normal" android:layout_width="wrap_content" an 我在资源文件夹中有两个图像

1)imgMsg_normal.png
2)imgMsg_Grey.png

in Layout file:<ImageVIEw    androID:ID="@+ID/imgMsg"    androID:src="@drawable/imgMsg_normal"    androID:layout_wIDth="wrap_content"    androID:layout_height="wrap_content"        androID:maxHeight="80dp"    androID:maxWIDth="80dp"       androID:layout_margin="20dp"       androID:scaleType="fitCenter"    local:MvxBind ="      " />

在代码背后:

加载此页面时,它首先显示所述图像:imgMsg_normal.

1)如何通过传递图像文件名动态更改图像:imgMsg_Grey在Local:MvxBind上面?

谢谢

解决方法 我们用转换器来做到这一点.所以绑定在(例如)布尔值上.如果为真,则转换器返回图像1,如果值为假,则返回图像2.

转换器(在核心项目中):

public class MyIconValueConverter : MvxValueConverter<bool,string>{    protected overrIDe string Convert(bool value,Type targettype,object parameter,CultureInfo culture)    {        if(value)        {            return "res:imgMsg_normal";        }        else        {            return "res:imgMsg_Grey";        }    }}

并在您的文件中绑定:

<Mvx.MvxImageVIEw     local:MvxBind="ImageUrl MyBoolProperty,Converter=MyIcon" />

使用上面的代码,我们在显示不同项目的列表中动态更改图标.图标取决于列表中项目的属性.

总结

以上是内存溢出为你收集整理的xamarin – 如何在MvvmCross中动态更改图像全部内容,希望文章能够帮你解决xamarin – 如何在MvvmCross中动态更改图像所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1127891.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-30
下一篇2022-05-30

发表评论

登录后才能评论

评论列表(0条)

    保存