Iphone UIScrollView和UIView
我想使用UIScrollView在用户滚动UIScrollView控件时显示多个UIView。我现在还不担心显示分页 我已经设法实现了其中的一些功能,但没有按照我希望的方式工作 目前: 我有3个具有不同nib文件的ViewController。根视图控制器是带有UIScrollView的控制器,它用于加载其余的视图控制器Iphone UIScrollView和UIView,iphone,sdk,uiscrollview,Iphone,Sdk,Uiscrollview,我想使用UIScrollView在用户滚动UIScrollView控件时显示多个UIView。我现在还不担心显示分页 我已经设法实现了其中的一些功能,但没有按照我希望的方式工作 目前: 我有3个具有不同nib文件的ViewController。根视图控制器是带有UIScrollView的控制器,它用于加载其余的视图控制器 NSMutableArray *controllers = [[NSMutableArray alloc] init]; for (unsigned i = 0; i
NSMutableArray *controllers = [[NSMutableArray alloc] init];
for (unsigned i = 0; i < kNumberOfPages; i++) {
[controllers addObject:[NSNull null]];
}
self.viewControllers = controllers;
[controllers release];
scrollView.pagingEnabled = YES;
scrollView.contentSize = CGSizeMake(scrollView.frame.size.width * kNumberOfPages, scrollView.frame.size.height);
scrollView.showsHorizontalScrollIndicator = NO;
scrollView.showsVerticalScrollIndicator = NO;
scrollView.scrollsToTop = NO;
scrollView.delegate = self;
pageControl.numberOfPages = kNumberOfPages;
pageControl.currentPage = 0;
[self loadScrollViewWithPage:0];
- (void)loadScrollViewWithPage:(int)page {
if (page == 0) {
PageTwo *controller2 = [viewControllers objectAtIndex:page];
if ((NSNull *)controller2 == [NSNull null]) {
controller2 = [[PageTwo alloc] initWithPageNumber:page];
[viewControllers replaceObjectAtIndex:page withObject:controller2];
[controller2 release];
}
// add the controller's view to the scroll view
if (nil == controller2.view.superview) {
CGRect frame = scrollView.frame;
frame.origin.x = frame.size.width * page;
frame.origin.y = 0;
controller2.view.frame = frame;
[scrollView addSubview:controller2.view];
}
}
if (page == 1) {
// replace the placeholder if necessary
NewController *controller = [viewControllers objectAtIndex:page];
if ((NSNull *)controller == [NSNull null]) {
controller = [[NewController alloc] initWithPageNumber:page];
[viewControllers replaceObjectAtIndex:page withObject:controller];
[controller release];
}
// add the controller's view to the scroll view
if (nil == controller.view.superview) {
CGRect frame = scrollView.frame;
frame.origin.x = frame.size.width * page;
frame.origin.y = 0;
controller.view.frame = frame;
[scrollView addSubview:controller.view];
}
}
没关系。。。但是,我希望它首先加载根nib。但我不知道该怎么做。我知道我必须将页数增加到3,但是当我初始化控制器时,我不知道如何告诉它page==0应该是当前视图
有什么想法吗
更新:
唉,我忽略了什么。。没有注意到,如果不在级别0指定页面,它只显示当前视图哈
我真傻。我忽略了一些东西。。没有注意到,如果不在级别0指定页面,它只显示当前视图哈 这是否意味着你解决了你的问题?我曾经设置过我的第一个uiscrollview