
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中动态更改图像所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)