我正在使用UIScrollView进行分页,我注意到我没有后续的视图来调用它们的数据源/委托。我把它作为数据源/委托连接到他们的XIB中,并将其放在代码中以这种方式设置,但它仍然没有被调用。
我猜这个问题就在这里......我在做分页并插入第二和第三个视图。委托/数据源都不能处理被分页的第二或第三个视图。
requestDetailTwoViewController *controller = [viewControllers objectAtIndex:1];
requestDetailThreeViewController *controller2 = [viewControllers objectAtIndex:2];
if ((NSNull *)controller == [NSNull null])
{
if(page == 1)
{
controller = [[requestDetailTwoViewController alloc] initWithRequestNumber:[request objectForKey:@"RequestID"] forID:self.employeeIDfromHome];
[viewControllers replaceObjectAtIndex:page withObject:controller];
CGRect frame = scrollView.frame;
frame.origin.x = frame.size.width * 1;
frame.origin.y = 0;
controller.view.frame = frame;
[scrollView addSubview:controller.view];
}
}
if ((NSNull *)controller2 == [NSNull null])
{
if(page == 2)
{
controller2 = [[requestDetailThreeViewController alloc] initWithRequestNumber:[request objectForKey:@"RequestID"]];
[viewControllers replaceObjectAtIndex:page withObject:controller2];
[self addChildViewController:controller2];
CGRect frame = scrollView.frame;
frame.origin.x = frame.size.width * 2;
frame.origin.y = 0;
controller2.view.frame = frame;
[scrollView addSubview:controller2.view];
[controller2 didMoveToParentViewController:self];
}
}
谢谢!
答案 0 :(得分:0)
在您的课程中,您是否设置了协议的提示,如
@interface myClass : UIViewController <UIScrollViewDelegate> {
...
稍后,在viewDidLoad
:
self.myScrollView.delegate = self;