我在AppDelegate.m接口中创建一个属性countryNameInitials
作为NSMutableArray并合成它。目的是存储全局数据以在表视图中显示。在表视图控制器中:
#import "AppDelegate.h"
...
@implementation
#define AppDelegate [[UIApplication sharedApplication] delegate]
...
问题是我无法使用AppDelegate.countryNameInitials
来访问数据。任何的想法?
答案 0 :(得分:3)
事实是
[[UIApplication sharedApplication] delegate]
会给你一个通用UIApplcationDelegate
;虽然您需要MyOwnAppDelegate
(不知道如何调用它)类型才能使用countryNameInitials
属性。所以,试试:
#define AppDelegate ((MyOwnAppDelegate*)[[UIApplication sharedApplication] delegate])
然后
AppDelegate.countryNameInitials
应该有用。
(但我不会对类和宏使用相同的名称。)
答案 1 :(得分:0)
访问countryNameInitials
的问题是由于我在AppDelegate.m中声明了该属性。将它移动到AppDelegate.h后,错误就消失了。
附注:
1. AppDelegate
因为标识符名称适合我。 @Vakio建议的命名冲突无关紧要。