【发布时间】:2019-12-31 18:07:49
【问题描述】:
我正在尝试 MvvmCross (6.4.1) 并使用提到的示例 in the GitHub repository 遵循已安装 Nuget 包的 readme.txt 中的方法:
核心项目-
- 将 App 类添加到根文件夹(参见示例文件中的 Core/App.cs.pp)。
- 将 ViewModels 文件夹添加到项目的根目录,并在此文件夹中添加至少一个 ViewModel 类(参见示例文件中的 Core/HomeViewModel.cs.pp)。
iOS 项目(如果不是为 iOS 构建,则忽略)-
- 在 AppDelegate.cs 中,将 AppDelegate 类更改为继承自 MvxApplicationDelegate、Core.App> 而不是 ApplicationDelegate(参见示例文件中的 iOS/AppDelegate.cs.pp)。
- 仍在 AppDelegate.cs 中,删除所有预填充的方法,留下一个空白的 AppDelegate 类。
- 在项目的根目录下添加一个 Views 文件夹,并在该文件夹中添加至少一个 View 类,以对应 Core 项目中的 ViewModel 类(参见示例文件中的 iOS/HomeView.cs.pp)。
- 将新的 iOS Interface Builder 布局 (XIB) 或 StoryBoard 文件添加到 Views 文件夹,以对应上一步中创建的视图。 (参见示例文件中的 iOS/HomeView.xib.pp)。
唯一的区别是我使用的是故事板而不是 xib。我已经相应地调整了 Info.plist。尽管自述文件说该解决方案应该运行,但我在 Xamarin.iOS/UIKit/UIAplication.cs 中遇到了运行时异常:
自述文件中是否缺少任何内容来运行这个简单的解决方案?
【问题讨论】:
-
您是否尝试过使用 XIB 代替情节提要?那行得通吗?此外,您在生命周期的哪个阶段会遇到该异常?
-
@Saamer 尝试使用 XIB 时,我只是得到一个空白的白色屏幕。使用情节提要时,异常立即发生在 UIApplicationMain
-
白屏不是预期的行为吗?还是您已经在 XIB 上放置了物品?
-
好的,你记得在你的 View 类上添加一个 MvxFromStoryboard 属性,指示故事板文件的名称,如下所述:mvvmcross.com/documentation/platform/ios/…
-
我还检查了处理情节提要:Info.plist 中的情节提要条目也存在同样的问题。一旦你删除它们(见上文),一切都会顺利进行。
标签: ios xamarin xamarin.ios mvvmcross runtimeexception