【问题标题】:Overriding a constant value at runtime在运行时覆盖常量值
【发布时间】:2015-03-05 09:20:55
【问题描述】:

我正在通过 cocoapods 使用一些外部库,并被要求自定义其标准行为。我发现,这种行为取决于在库中声明的常量。

像这样

static const NSString *CONSTANT_NAME = @"..";

此常量在整个代码中都使用,因此混合每个受影响的方法并复制代码将是一个非常肮脏的解决方法。

当然,我可以只编辑源文件,但是每次我这样做时常量都会回滚到其原始状态

pod update

所以,我想知道是否有一个很好的方法来解决这个问题。也许,在运行时。

提前谢谢!

【问题讨论】:

    标签: ios constants objective-c-runtime


    【解决方案1】:

    你必须停止使用 cocoapods 并开始使用你自己的 git repo 分支,以及你修改过的常量。

    另一种方法是修改源,以便可以在运行时配置此常量(即不再是常量)并向作者发送拉取请求。

    开源万岁!

    【讨论】:

    • 这是一个非常有用的答案)thanx)
    猜你喜欢
    • 1970-01-01
    • 2020-04-15
    • 1970-01-01
    • 1970-01-01
    • 2014-06-26
    • 2015-08-11
    • 2018-02-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多