【发布时间】:2012-04-20 12:11:39
【问题描述】:
我有以下应用情况。 在启动时,我想将“列表”视图模型作为启动视图模型/视图。 但我希望用户能够选择返回以转到“菜单”视图模型。 这将如何在 MvvmCross 中完成?
【问题讨论】:
-
您的接受率很低,关于 Stuart 在这里的出色回答,您应该接受。
标签: c# xamarin.ios xamarin.android mvvmcross
我有以下应用情况。 在启动时,我想将“列表”视图模型作为启动视图模型/视图。 但我希望用户能够选择返回以转到“菜单”视图模型。 这将如何在 MvvmCross 中完成?
【问题讨论】:
标签: c# xamarin.ios xamarin.android mvvmcross
如果您想支持 WP7,那么导航将难以通过市场提交流程 - 回流在 wp7 上是神圣的。
该流程对于 Android 或 iPhone 用户也没有多大意义...因此您可能会更好地考虑替代 UX 流程 - 您仍然可以拥有流程 ListView->Menu->... 但您可以避免用户理解为BACK的“BACK”语法。
我想我会将这种类型的用户体验实现为:
在启动时正常导航到 ListView/ListViewModel。
呈现某种方式 - 菜单、按钮或超链接 - 让用户导航到 HomeView/HomeViewModel - 但尝试使用“主页”或“菜单”隐喻而不是“返回” - “返回意味着回来”,尤其是在 WP7 上。
在导航到主页中,在导航中设置“ClearTop”标志 - 例如:
public IMvxCommand GoHomeCommand
{
get
{
return new MvxRelayCommand(RequestNavigate<HomeViewModel>(true));
}
}
当您到达主页时,iOS 和 WP7 将解释这个“ClearTop”标志以清除导航返回堆栈。然而,遗憾的是它目前在 Android 中不能完美运行 - 所以你需要在你的 Android UI 项目中做一些聪明的事情 - 例如。也许以某种方式找到一种方法来为特殊的启动 ListView/Activity 使用“NoHistory”标志。
有兴趣了解是否有其他方法。
【讨论】: