我想访问一个NSMutableArray,它是我的AppDelegate类的数据成员。它是在实现中合成的,并且是一个具有“名称”NSString数据成员的自定义类的数组。访问委托中的局部变量的正确方法是什么?
我目前使用它来填充表视图(子视图)是这样的:
cell.textLabel.text = [[[delegate contentArray] objectAtIndex:indexPath.row] name];
这工作,但我得到一个警告:
warning: no '-contentArray' method found
它不会为编译:
cell.textLabel.text = [[delegate.contentArray objectAtIndex:indexPath.row] name];
我得到这个在这种情况下:
error: request for member 'contentArray' in something not a structure or union
在委托中访问数组的正确方法是什么?
更新: 要声明delegate
,表中的视图控制器头文件,我包括@class MainAppDelegate;
并在@interface
我声明的数据成员MainAppDelegate *delegate;
。在表视图控制器的@implementation
我做@synthesize delegate;
。
什么是委托?它是如何声明的? – Chuck 2010-03-03 23:33:04
我更新了帖子。我使用主AppDelegate类类型来定义从视图控制器类中委托的代理。 – 2010-03-04 01:48:31
局部变量只在方法的范围内,而类没有“数据成员”。我相信你正在考虑一个实例变量,它通过一个属性暴露出来。 – 2010-03-04 02:44:30