【发布时间】:2014-06-30 17:47:34
【问题描述】:
我想在StoryBoard 元素中使用预定义的macros
例如:
我的应用程序中有一个 10 textfield,如果我想更改所有 textfield 到 preprocessor macros 的大小,那么它会更容易和更快。在这种情况下,我们只需要更改那个宏变量。
【问题讨论】:
标签: ios iphone objective-c xcode macros
我想在StoryBoard 元素中使用预定义的macros
例如:
我的应用程序中有一个 10 textfield,如果我想更改所有 textfield 到 preprocessor macros 的大小,那么它会更容易和更快。在这种情况下,我们只需要更改那个宏变量。
【问题讨论】:
标签: ios iphone objective-c xcode macros
所以核心问题是 Interface Builder 文件的共享常量的使用。
预处理器宏只能用在通过 C 预处理器运行的文件中——本质上就是你的代码。所以你不能使用宏来实现 IB 文件的共享常量。同样,您不能使用您在代码文件中定义的实际常量。
然而,您可以做的是创建一个自定义的UITextField(或任何UIView)子类,设置您的常量值(或定义任何其他自定义行为)子类实现,然后在 Interface Builder 的 Identity Inspector -> Custom Class 部分中为所有文本字段元素选择此自定义类名称。
【讨论】: