在最初的非Xamarin.Forms项目中使用Xamarin.Forms

时间:2016-05-02 14:31:41

标签: xamarin.ios xamarin.android xamarin.forms

我继承了一个应用程序的维护和开发,该应用程序最初是在没有Xamarin.Forms 的情况下编写的,为Android和iOS做UI层,这是传统的平台特定项目和我的业务共享项目逻辑。

鉴于大多数应用程序屏幕都相当简单,而且我花费了不成比例的时间来讨论特定于平台的UI代码,我想问一下是否有人在中集成Xamarin.Forms 的经验最初没有使用Xamarin.Forms的项目。

我想知道是否有可能用Xamarin.Forms替换特定屏幕,可能是在特定的Android Activity或iOS Screen中手动托管它们。

我想首先将下一个功能屏幕集成为共享的Xamarin.Forms“页面”。

以前有人做过这样的事吗?

1 个答案:

答案 0 :(得分:2)

我们已经通过重新设计应用程序来完成此操作。我们使用MvvmCross和原生UI开发了应用程序,并转移到了Xamarin.Forms。我们抛弃了所有观点,但保留了ViewModels。这意味着:如果UI层与ViewModel层分离(使用数据绑定),则应该很容易完全切换。

我不建议,混合使用Forms和本机Activities / ViewControllers,因为正确处理导航,可能会很痛苦(特别是在android下)。如果一个屏幕上有复杂的内容,则应使用自定义渲染器在自定义元素中移动它。

混合起来有两个极简主义的例子: