在MvxDialogFragment

时间:2015-10-19 16:32:20

标签: mvvmcross

我们正在开发使用Xamarin for Android和MvvmCross 4.0.0-beta3的Android应用程序。

我遇到了一个我无法理解的问题。我有一个对话框,托管在MvxDialogFragment内。我们正在覆盖OnCreateDialog - 方法并使用AltertDialog.Build返回Dialog构建。使用通过在对话框中调用this.BindingInflate创建的视图(从MvxDialogFragment派生的类)将视图设置为对话框。

我们正在膨胀的视图包含MvxListView,而MvxItemTemplate包含MvxFrameControl。运行应用程序时,我得到以下异常:

InnerException was MvxException: The owning Context for a MvxFrameControl must implement LayoutInflater

如果我从项目模板中删除MvxFrameControl,并包含类似TextView的内容,则对话框会正确呈现(并显示数据绑定文本)。

我们的应用中还有其他案例,其中MvxFrameControl来自项目模板,渲染得很好,我们有包含MvxFrameControl的对话框。似乎只有当结构为MvxDialogFragment -> MvxListView -> MvxItemTemplate -> MvxFrameControl时才会出现问题。

查看code for the MvxFrameControl,您可以看到如果上下文未实现IMvxLayoutInflaterHolder,它会抛出我们收到的异常。

因此;我的问题是这样的:当MvxFrameControl如上所述托管时,最终会成为“拥有的背景”?

0 个答案:

没有答案