【发布时间】:2018-05-24 22:41:37
【问题描述】:
我将 MvvmCross 3.0.14 与 Xamarin.Android 一起使用。
我有一个 MvxImageView,如果我使用 android:src 直接指定图像(不绑定),我可以显示特定的本地图形资源:
<Mvx.MvxImageView
android:layout_width="100dp"
android:layout_height="75dip"
android:layout_weight="1"
android:src="@drawable/Card_kh"/>
但我无法使用 local:MvxBind 显示相同的图像:
<Mvx.MvxImageView
android:layout_width="100dp"
android:layout_height="75dip"
android:layout_weight="1"
local:MvxBind="ImageUrl 'res:Card_kh'"/>
这不起作用。 MvxAndroidLocalFileImageLoader.LoadResourceBitmap 记录一条跟踪消息,指示“Card_kh”不是已知的可绘制名称。令人鼓舞的是,它已经走到了这一步——至少我知道这些信息的预期消费者确实得到了它。但显然我没有以正确的格式提供该信息。
更进一步,我的实际目标是让我的 ViewModel 确定应该使用什么资源,例如
class MyViewModel : MvxViewModel
{
public string SomeImagePath { get { return "res:Card_kh"; } }
}
和
<Mvx.MvxImageView
android:layout_width="100dp"
android:layout_height="75dip"
android:layout_weight="1"
local:MvxBind="ImageUrl SomeImagePath"/>
我需要做什么才能将 MvxImageView 绑定到视图模型确定的本地资源图像?
【问题讨论】: