一个简单的问题,我设置了UITableView的委托,并且我有一个关于设置委托和数据源属性的问题。我注意到委托和数据源的属性不可用,我认为采用这些协议会使它们可用。但我现在认为我可能有我的委托类的超类错误。用于委托的UITableView超类?
目前我有:
-(void)viewDidLoad {
TestDelegate *tempDelegate = [[TestDelegate alloc] init];
[self setMyDelegate:tempDelegate];
// setDelegate
// setDataSource
[tempDelegate release];
[super viewDidLoad];
}
我对TestDelegate接口的样子:
@interface TestDelegate : NSObject <UITableViewDelegate, UITableViewDataSource> {
NSArray *listData;
int myCounter;
}
我可以问,如果上面的应该是:
@interface TestDelegate : UITableView <UITableViewDelegate, UITableViewDataSource> {
NSArray *listData;
int myCounter;
}
加里
编辑:我认为它可能是在正确的轨道上:我的委托superClass应该是NSObject,我也有一个在Interface Builder中的UITableView。
我已添加@property(nonatomic,retain)IBOutlet UITableView * myTableView;在Xcode中,并将其连接到IB中的UITableView。我现在可以通过IBOutlet访问Xcode中的委托和数据源属性。
这似乎不是一个问题。 “代表和数据源的属性不可用”是什么意思? - 一个UITableView具有这些属性。此外,“采用协议会使它们可用”是什么意思? – 2010-05-11 10:20:03
嗨保罗,我感到困惑,基本上我试图在Xcode中设置UITableView> delegate和UITableView> dataSource,但对如何做到这一点感到困惑。我所缺少的是像IB中添加的所有项目,如果您想通过Xcode访问它们,您需要使用IBOutlet创建一个指向相应对象的指针。 – fuzzygoat 2010-05-11 10:29:37