gpt4 book ai didi

objective-c - Objective C 中的全局属性

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:00:03 24 4
gpt4 key购买 nike

我在 Constants.h 文件中以这种方式定义了一个枚举:

typedef enum {
CalendarTypeMonth = 0,
CalendarTypeWeek
} CalendarType;

然后在我的 View Controller 中,我确定日历类型应该是什么,并以这种方式将其存储在属性中:

@property (nonatomic) CalendarType myCalendarType;

现在我希望我项目中的所有类都可以访问日历类型。如何将此属性设置为全局/外部以便所有类都可以读取它?

编辑:我知道枚举的定义将在整个项目中可用。但我感兴趣的是myCalendarType。如何跨所有类访问 myCalendarType 的值?

最佳答案

您可以声明类方法来访问静态变量。

将这样的代码添加到您的实现文件中:

static MyStaticType staticVar = MyStaticTypeDefault;

+(BOOL)myStaticVar
{
return staticVar;
}

+(void)setMyStaticVar:(MyStaticType)newValue
{
staticVar = newValue;
}

并在接口(interface)文件中为该方法创建声明。这比将所有静态值移动到 AppDelegate 要好得多。无论如何,很多变体都是可能的 - 例如,您可以创建单例来存储应用程序的某些设置或使用 CoreData。

关于objective-c - Objective C 中的全局属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8647331/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com