在可可中放置“常数”的位置

时间:2010-11-05 16:54:25

标签: iphone objective-c cocoa cocoa-touch constants

我在我的可可(触摸)应用程序中与json api进行通信。

作为回应我得到这样的东西:

"wh": {
 "1": ["11.30 - 15.00"], 
 "3": ["11.30 - 15.00"], 
 "2": ["12.00 - 14.00", "17.30 - 23.00"], 
 "5": ["11.30 - 15.00"], 
 "4": ["11.30 - 15.00"]
}, 

键0到6反映了工作日(星期一== 0,星期二= 1,......)

为了映射这个我有一个NSArray:

weekdays = [[NSArray alloc] initWithObjects:@"Montag",
       @"Dienstag",
       @"Mittwoch",
       @"Donnerstag",
       @"Freitag",
       @"Samstag",
       @"Sonntag", nil];

我需要在两个viewcontrollers中使用它 - 目前在viewWillAppear中设置。 :(

所以我的问题:

  1. 我应该在何时/何时设置此工作日数组?
  2. 如何在viewcontrollers中访问它?
  3. 有什么建议吗?

4 个答案:

答案 0 :(得分:3)

为什么不使用NSDateFormatter课程?您可以使用它来获取任何语言的wekk名称的本地化日期。

答案 1 :(得分:1)

使用单例来存储这类信息,这是一个例子:

http://getsetgames.com/2009/08/30/the-objective-c-singleton/

答案 2 :(得分:1)

我在应用程序中处理常量的方式......

1)创建一个Common.h文件,将其放在Resources目录中。

2)在那里定义你想要的所有常数。

#define STATE_INDEX [NSArray arrayWithObjects:@"AL", @"AK", @"AZ", ... nil]
#define NSDATEFORMATTER_WITH_TIME_FORMAT @"dd/MM/yyyy : HH:mm:ss"
#define PORTRAIT_KEYBOARD_HEIGHT 216

3)确保......

#import "Common.h"

在您要使用常量的代码文件中。

答案 3 :(得分:0)

你可以依赖.strings文件:

[[NSBundle mainBundle] localizedStringForKey:key value:key table:@"Weekdays"]