【发布时间】:2013-08-09 02:18:08
【问题描述】:
为了为使用 MvvmCross 的 Android 应用程序提供正确的后退按钮行为,我不得不将特定视图的 LaunchMode 修改为 SingleTask。虽然这工作正常,但当第二次使用这些视图之一时,ViewModel 构造函数和 Init 方法(与 Nav 类结合使用以将参数从一个视图传递到另一个视图)显然不再被触发。我认为这是“按设计”或“由 Android 操作系统强制执行”的行为,您只需在将代码放置在每次显示视图时可能需要调用的构造函数/初始化方法(例如 RefreshJobList)时注意。顺便说一句,我的解决方法是在 Activity 的 OnResume 方法中调用所需的方法,例如:
((JobDetailViewModel)this.ViewModel).RefreshJobPhotos();
有没有“更好的方法”?
【问题讨论】: