Ios 将photoscroller创建的滚动视图添加到子视图
我试图修改苹果的,使scrollview成为一个子视图,而不是占据整个屏幕的视图。关于如何实现这一点有什么想法吗Ios 将photoscroller创建的滚动视图添加到子视图,ios,objective-c,iphone,ipad,Ios,Objective C,Iphone,Ipad,我试图修改苹果的,使scrollview成为一个子视图,而不是占据整个屏幕的视图。关于如何实现这一点有什么想法吗 - (void)loadView { // Step 1: make the outer paging scroll view CGRect pagingScrollViewFrame = [self frameForPagingScrollView]; pagingScrollView = [[UIScrollView alloc] initWit
- (void)loadView
{
// Step 1: make the outer paging scroll view
CGRect pagingScrollViewFrame = [self frameForPagingScrollView];
pagingScrollView = [[UIScrollView alloc] initWithFrame:pagingScrollViewFrame];
pagingScrollView.pagingEnabled = YES;
pagingScrollView.backgroundColor = [UIColor blackColor];
pagingScrollView.showsVerticalScrollIndicator = NO;
pagingScrollView.showsHorizontalScrollIndicator = NO;
pagingScrollView.contentSize = [self contentSizeForPagingScrollView];
pagingScrollView.delegate = self;
// When I do this it fails
[self.view addSubview:pagingScrollView];
// Step 2: prepare to tile content
recycledPages = [[NSMutableSet alloc] init];
visiblePages = [[NSMutableSet alloc] init];
[self tilePages];
}
您只需修改scrollview的框架,使其按照您想要的方式定位和调整大小: 这是视图控制器中在示例中设置它的行
pagingScrollView = [[UIScrollView alloc] initWithFrame:pagingScrollViewFrame];
作为示例,这里是一个带有一些硬编码值的示例帧:
CGRect scrollFrame = CGRectMake(100,100,100,100);
pagingScrollView = [[UIScrollView alloc] initWithFrame:scrollFrame];
因此,我发现通过将方法从loadView更改为viewDidLoad,可以将scrollView添加为子视图
我不知道为什么会这样,但确实如此。我很想知道为什么会这样…是的,我可以更改大小和位置,但是当我尝试将其添加到子视图时(将self.view=pagingScrollView更改为[self.view addSubview:pagingScrollView]),它会因访问错误而崩溃。您应该能够将其添加为子视图而不会出现问题。你从哪里调用这个代码?您可能希望发布更多代码来帮助缩小问题的根源。您可能还希望调试代码,以查看哪个项没有被实例化(导致错误访问)。对此,我很抱歉,我用更改的代码块编辑了我的文章。作为说明,我修改了frameForPagingScrollView,为我提供了一个自定义框架(而不是使用CGRectMake硬编码)