您正在尝试关闭与 Fragment 关联的 View Model 当前位于顶部 Activity
You are trying to close View Model associated with Fragment when currently top Activity
我的应用在 Xamarin.Android 上运行 MvvMCross v 5+。
我正在尝试实现以下示例 https://github.com/MvvmCross/MvvmCross/tree/develop/TestProjects/Android-Support/Fragments/Example.Droid
这是我的主视图,我将在其中拥有我所有的“DrawerLayout、Toolbar、AppbarLayout、FrameLayout、NavigationView”
[Activity(Label = "View for HomeViewModel",
LaunchMode = LaunchMode.SingleTop
)]
public class HomeView : MvxAppCompatActivity<HomeViewModel>, INavigationActivity
{
}
但是在我的 Homeview 中,我正在创建相同的整个 DrawerLayout Layout.so 每当我单击导航菜单项时,我都会像这样切换片段
switch (e.MenuItem.ItemId)
{
case Resource.Id.nav_home:
ViewModel.ShowViewModelAndroid(typeof(OrdersViewModel));
//ListItemClicked(0);
break;
case Resource.Id.nav_friends:
ListItemClicked(1);
break;
case Resource.Id.nav_profile:
ListItemClicked(2);
break;
}
我的片段
[MvxFragment(typeof(HomeViewModel), Resource.Id.content_frame, true)]
[Register("Peeto.Droid.Views.Fragments.OrdersFragment")]
public class OrdersFragment: BaseStateFragment<OrdersViewModel>
{
}
每当我点击 nav_home 它就会抛出以下错误
Unhandled Exception:
System.InvalidOperationException: You are trying to close ViewModel associated with Fragment when currently top Activity (Peeto.Droid.Views.HomeView does not implement IMvxFragmentHost interface!
您的程序包在 5.2 上时,您似乎在使用 5.0 代码。此示例仅在 5.2 上有效。您必须将您的属性更改为 [MvxFragmentPresentation]
并更新为新的演示者。
我的应用在 Xamarin.Android 上运行 MvvMCross v 5+。
我正在尝试实现以下示例 https://github.com/MvvmCross/MvvmCross/tree/develop/TestProjects/Android-Support/Fragments/Example.Droid
这是我的主视图,我将在其中拥有我所有的“DrawerLayout、Toolbar、AppbarLayout、FrameLayout、NavigationView”
[Activity(Label = "View for HomeViewModel",
LaunchMode = LaunchMode.SingleTop
)]
public class HomeView : MvxAppCompatActivity<HomeViewModel>, INavigationActivity
{
}
但是在我的 Homeview 中,我正在创建相同的整个 DrawerLayout Layout.so 每当我单击导航菜单项时,我都会像这样切换片段
switch (e.MenuItem.ItemId)
{
case Resource.Id.nav_home:
ViewModel.ShowViewModelAndroid(typeof(OrdersViewModel));
//ListItemClicked(0);
break;
case Resource.Id.nav_friends:
ListItemClicked(1);
break;
case Resource.Id.nav_profile:
ListItemClicked(2);
break;
}
我的片段
[MvxFragment(typeof(HomeViewModel), Resource.Id.content_frame, true)]
[Register("Peeto.Droid.Views.Fragments.OrdersFragment")]
public class OrdersFragment: BaseStateFragment<OrdersViewModel>
{
}
每当我点击 nav_home 它就会抛出以下错误
Unhandled Exception:
System.InvalidOperationException: You are trying to close ViewModel associated with Fragment when currently top Activity (Peeto.Droid.Views.HomeView does not implement IMvxFragmentHost interface!
您的程序包在 5.2 上时,您似乎在使用 5.0 代码。此示例仅在 5.2 上有效。您必须将您的属性更改为 [MvxFragmentPresentation]
并更新为新的演示者。