我的iphone程序有一个Xib视图,其中有一个tableview。我已经将UITableViewController子类化了,并试图让xib中的UITableView发送消息。当我触摸tableview行时程序崩溃。
它正确地调用:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{}
并正确分配了cell.textLabel.text。
接口代码段:
@interface PlayersDrawsViewController : UIViewController {
UITableView *uitableView;
PlayersToDrawTableViewController *pvc;
}
@property (nonatomic, retain) IBOutlet UITableView *uitableView;
@property (nonatomic, retain) IBOutlet PlayersToDrawTableViewController *pvc;
实施代码段:
- (void)viewDidLoad
{
// Setup TableView
if (pvc == nil) {
pvc = [[PlayersToDrawTableViewController alloc]
initWithNibName:@"PlayersToDrawTableViewController" bundle:nil];
/* works great, loads rows */
self.uitableView.dataSource = pvc.tableView.dataSource;
/* EXC_BAD_ACCESS when didSelectRowAtIndexPath is called */
//self.tableView.delegate = pvc;
}
}
我的UITableViewController子类:
@interface PlayersToDrawTableViewController : UITableViewController
<UITableViewDelegate>
{
}
@end
如何将代理连接起来,以免发送邮件失败?
我读过这些帖子,要么我很密集,要么他们不回答我的问题:
UITableView issue when using separate delegate/dataSource
UITableView superClass for delegate?
Getting “EXC_BAD_ACCESS” when accessing instance variable from within UITableView delegate method
答案 0 :(得分:2)
如果此行与EXC ..:
崩溃self.tableView.delegate = pvc;
...你在某处挂了tableView参考吗?在你的代码片段中“不” - 但也许你在NIB中做过?