如何像在 iOS 中一样在 WP8 中使用 Prefix.pch?

Posted

技术标签:

【中文标题】如何像在 iOS 中一样在 WP8 中使用 Prefix.pch?【英文标题】:How to use Prefix.pch in WP8 like in iOS? 【发布时间】:2014-01-23 11:11:05 【问题描述】:

ios 中,我有 5 个使用相同代码的应用程序。我能够使用 Prefix.pch 文件中的值引用公共类并分离应用程序名称、主题和颜色。我的前缀文件有这些,

#define APPLICATION_NAME @"Application01"
#define APPLICATION_THEME @"Brown"

通过使用这些宏定义了我的前缀文件,在我的程序中我可以说

#if APPPLICATION_THEME = @"Brown"
-perform this-

我想在 WP8 中采用相同的方法。我不知道在哪里定义这些宏值并在代码中使用它们。请帮助我实现这一目标。

【问题讨论】:

【参考方案1】:

只需替换

#define APPLICATION_NAME @"Application01"#define APPLICATION_NAME_Application01

#if APPPLICATION_THEME = @"Brown"#if APPPLICATION_THEME_Brown

除了#define,你可以在菜单Build->Conditional compilation Symbols:的项目属性中设置它,然后输入APPLICATION_NAME_Application01

【讨论】:

有没有其他方法不将其添加到条件编译符号:?因为我有大约 50 多个宏,并且很难在条件编译符号中添加和删除它 @user2056563 我知道只有两种方法,一种是在代码中显式编写#define ...,另一种是在条件编译符号中,这样您就可以像主定义页面一样创建您在其中设置所有#defines。 请看这里你会明白我在找什么***.com/questions/22094143/… 主定义页面?怎么做 ?你能告诉我怎么做吗? 对您发布的问题的回复正是第一行回复中的内容【参考方案2】:

C# 语言支持可以在项目文件中全局定义的定义,也可以在任何文件的顶部定义它们:

#define USE_BROWN_THEME

但是,使用应用程序名称是在WMAppManifest.xml 文件中设置的,您只能在运行时检查/读取它,而不能在编译时执行此操作。而且 xml 文件不能很好地与#defines 配合使用。

#define (C# Reference)

【讨论】:

以上是关于如何像在 iOS 中一样在 WP8 中使用 Prefix.pch?的主要内容,如果未能解决你的问题,请参考以下文章

Swift3 如何像在 android 中一样在 iOS 中实现底部工作表

如何在iOS 7上的UITableViewCell左侧获得复选标记,就像在设置中一样?

如何像在 iOS 中为 iMessage 一样为 Android 创建贴纸包?

Android 如何像在 iOS 中一样广播 BLE 本地名称?

尝试使用 UIScrollView 创建自定义水平 UIPickerView - 如何像在 UIPickerView 中一样淡出边缘?

Android:像在 iOS 中一样逐步获取 HTTP 响应