【发布时间】:2012-09-17 13:00:00
【问题描述】:
我在获取要执行的数据源或委托方法时遇到问题。
我在我的 MainViewController 中使用了分页视图,它的分页很好,但是当涉及到 tableview 时是空白的,并且当我在数据源方法所在的位置设置断点时,它永远不会被调用。
MainViewController 加载视图
if ((NSNull *)controller2 == [NSNull null])
{
if(page == 2)
{
controller2 = [[requestDetailThreeViewController alloc] initWithRequestNumber:[request objectForKey:@"RequestID"]];
[viewControllers replaceObjectAtIndex:page withObject:controller2];
CGRect frame = scrollView.frame;
frame.origin.x = frame.size.width * 2;
frame.origin.y = 0;
controller2.view.frame = frame;
[scrollView addSubview:controller2.view];
}
}
TableViewController (requestDetailThreeViewController)
- (void)viewDidLoad
{
[super viewDidLoad];
[History fullHistoryWithBlock:^(NSArray *netMessages, NSError *error) {
if (error) {
[[[UIAlertView alloc] initWithTitle:NSLocalizedString(@"Error", nil) message: [error localizedDescription] delegate:nil cancelButtonTitle:nil otherButtonTitles:NSLocalizedString(@"OK", nil), nil] show];
} else {
NSLog(@"Number of Historical Entries: %d", [netMessages count]);
self.historyFromNet = [NSMutableArray arrayWithArray:netMessages];
}
} forID:requestNum];
}
- (id) initWithRequestNumber:(NSString *)requestID
{
if (self = [super initWithNibName:@"View" bundle:nil])
{
self.requestNum = requestID;
}
return self;
}
(为第二个代码块的间距道歉,很难让它进入代码模式。 它执行这两个方法,但它不执行我在类中也有的数据源方法。
在 XIB 文件中,我将 xib 的所有者设置为 requestDetailThreeViewController tableView设置为datasource/delegate和view
如果我在 ViewDidLoad 中将 tableview 设置为隐藏,它确实会消失。
我只是无法让它执行填充表格的方法。
更新:
更多信息-
View XIB 里面只有一个 TableView,没有控制器。
谢谢! 艾伦
【问题讨论】:
标签: objective-c uitableview delegates datasource paging