【问题标题】:Change MainPage in Xamarin.Forms based on Run-Time Configuration根据运行时配置更改 Xamarin.Forms 中的 MainPage
【发布时间】:2020-05-22 04:56:46
【问题描述】:

在我的 Visual Studio Xamarin Forms 项目中,我创建了一个新的运行时配置 (AppName.ios - DevBuild)。我现在有两种配置,一种是默认配置 (AppName.iOS),另一种是自定义配置 (AppName.iOS - DevBuild)。基于运行时配置,我想显示一个页面。我怎么做?

例如:让我们取两个页面,分别名为 Page APage B。如果项目是使用 AppName.iOS-DevBuild 构建的,那么 Page A 应该是 MainPage。如果不是,那么 Page B 应该是MainPage

【问题讨论】:

  • 什么是两次运行时配置?你的 iOS 项目中有两个 info.plist 吗?
  • 您可以基于每个配置定义编译器标志,并在代码中使用#IFDEF 检查以根据这些标志有条件地执行
  • @JackHua-MSFT :不,只有一个 info.plists
  • @Jason:有什么可以分享的例子吗??
  • 我还是不知道你如何配置你的运行时配置?给我们看一些相关的代码?或者您想要一种方法来进行运行时配置?

标签: c# visual-studio xamarin xamarin.forms


【解决方案1】:

在项目选项对话框的编译器下,在“定义符号”框中,添加符号“MySymbolName”。这可以按配置完成

然后在你的代码中

#if MySymbolName
  // any code in this block will only be compiled in configurations where
  // MySymbolName is defined
#endif

【讨论】:

  • 我应该在共享项目中声明它还是在Android和iOS项目中声明它??
  • 在你打算使用的项目中
  • 试过不行。这就是我所做的,在 Android 项目中我定义了一个新配置并定义了一个符号。但是当我选择我的配置并运行时,它显示的是相同的旧页面而不是新页面
猜你喜欢
  • 1970-01-01
  • 2016-01-13
  • 1970-01-01
  • 2017-02-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-08-09
  • 1970-01-01
相关资源
最近更新 更多