Android 无法绑定自定义MvvmCross视图

Android 无法绑定自定义MvvmCross视图,android,visual-studio,xamarin,mvvmcross,Android,Visual Studio,Xamarin,Mvvmcross,我已经创建了两个定制的Android视图,我想将它们绑定到数据模型中的属性。当我运行应用程序时,属性肯定没有绑定,并且我在日志中看到了错误,例如MvxBind:Error:106.21未找到视图类型-md5b46e1450448c30667827ca3b24581c6a.NavigationListView 我最初在android.support.v4.widget.DrawerLayout上也遇到了同样的问题,我可以通过将程序集添加到Setup.cs中的androidviewsassembli

我已经创建了两个定制的Android视图,我想将它们绑定到数据模型中的属性。当我运行应用程序时,属性肯定没有绑定,并且我在日志中看到了错误,例如
MvxBind:Error:106.21未找到视图类型-md5b46e1450448c30667827ca3b24581c6a.NavigationListView

我最初在android.support.v4.widget.DrawerLayout上也遇到了同样的问题,我可以通过将程序集添加到Setup.cs中的
androidviewsassemblies
来解决这个问题。我尝试对我的自定义视图执行相同的操作,但没有效果。我的
AndroidViewAssembly
如下所示:

protected override IList<Assembly> AndroidViewAssemblies
{
    get
    {
        var assemblies = base.AndroidViewAssemblies;
        assemblies.Add(typeof(DrawerLayout).Assembly);
        assemblies.Add(typeof(NavigationListView).Assembly);
        return assemblies;
    }
}
受保护的重写IList AndroidViewAssembly
{
得到
{
var assemblies=base.AndroidViewAssemblies;
组件。添加(类型(抽屉布局)。组件);
Add(typeof(NavigationListView).Assembly);
返回组件;
}
}
我确实注意到,对于
DrawerLayout
,MvxBind在日志中包含了完整的名称空间,但对于我的自定义视图,它使用了md5哈希而不是名称空间,我认为这与我看到的问题有关

这在几天前肯定是有效的,但在恢复到我知道它有效时使用的代码后仍然不起作用。这使我相信我有某种配置问题

我正在使用Visual Studio 2013。自从上次工作以来,我确实安装了StyleCop并将Reformer更新到了8.2版,但我对那些破坏我的自定义视图的人表示怀疑


发生了什么,我如何修复它?

正如斯图尔特所说,这是Xamarin 5.1中的一部分

我必须做两件事来解决这个问题:

  • 我必须将
    [注册(“com/example/namespace/CustomViewName”)]
    添加到我的自定义视图中才能修复这些问题
  • 我更新到MvvmCross 3.5.1以修复MvvmCross控件的绑定(例如
    MvxListView

这看起来只是Xam最新突破性变化的一部分。尝试使用
Register
属性将视图的java类名设置为旧式java类名-比
md5b46e1450448c30667827ca3b24581c6a更可读和可预测