【问题标题】:Creating a Configuration File in Xcode?在 Xcode 中创建配置文件?
【发布时间】:2014-11-12 20:49:44
【问题描述】:

Xcode 新手。我有一个创建视图的静态库,但我想允许一个新项目在配置文件中设置视图框架,该配置文件可以更改静态库中的框架大小值。某种全局#define 变量。

如何在 Xcode 中执行此操作?我已经查看了 pbxuser 文件、pch、xconfigs 和 plists,但我完全不知道应该在哪里进行设置。

【问题讨论】:

  • 首先确定是要在编译时配置还是在运行时配置。根据该问题的答案,应用的技术明显不同。
  • 在编译时配置。谢谢!
  • 那么您不需要运行时 plist 之类的东西,您可能希望仅使用您的 pch 文件及其包含的内容来做很多事情。
  • 另外,您可能应该研究“CocoaPods”以单独管理常用组件。是丘吉尔还是迪斯雷利说过“CocoaPods 是一种非常糟糕的通用组件管理形式,除了所有其他组件。”
  • 我是否需要在项目文件中创建一个具有设置值的 .h/.m,将标头添加到 pch 文件,然后将静态库中的前缀标头设置为该 pch 文件以获得值,然后在我想要的类中使用该值?

标签: ios objective-c xcode


【解决方案1】:

当您初始化静态库中定义的类实例时,您应该传递正确的配置(无论是视图框架、颜色还是任何其他参数)。

不要使事情过于复杂。您不需要任何配置文件。

【讨论】:

  • 这就是我所说的,但是我的老板希望通过配置文件来完成,因为他觉得出于某种原因会更容易(他来自 java 背景)。我该怎么办?
  • 读取任意配置文件并在代码中传递参数
  • 你告诉你的老板这不是 Java 并且你知道你在做什么——这就是他们付钱给你的原因。 ://
  • 你能举个例子吗?我从来没有真正使用过配置文件......真的很感激。 (我每小时得到 9 美元的报酬,我不在乎我的意见)
【解决方案2】:

假设您的 config.plist 文件在您的项目文件夹下并添加到您的项目中:

NSString *configPath = [[NSBundle mainBundle] pathForResource:@"config" ofType:@"plist"];
NSDictionary *config = [NSDictionary dictionaryWithContentsOfFile:configPath];

float xStartPoint = [[config objectForKey:@"xStartPoint"] floatValue];
float yStartPoint = [[config objectForKey:@"yStartPoint"] floatValue];
float objectWidth = [[config objectForKey:@"objectWidth"] floatValue];
float objectHeight = [[config objectForKey:@"objectHeight"] floatValue];

UIView *exampleView = [[UIView alloc] initWithFrame:CGRectMake(xStartPoint, yStartPoint, objectWidth, objectHeight)];
[self.view addSubview:exampleView];

Plist 文件示例:

The .plist code

【讨论】:

  • 我完全尝试过,但我需要 15 个代表。我一个月前才开始编码,所以我使用 StackOverflow 的时间不长。一旦我建立了我的代表,我会回来的。 :)
  • 啊,这很酷,伙计,祝你好运!你可以随时呼救;)
【解决方案3】:

创建一个 plist 并在加载时读取值。这将允许您从外部修改 plist 文件,以便在 Xcode 之外进行轻松更改(如果这是他的愿望)。

iPhone read/write .plist file

【讨论】:

    猜你喜欢
    • 2017-11-19
    • 2021-04-04
    • 2018-01-03
    • 1970-01-01
    • 1970-01-01
    • 2013-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多