2

更新—— 我有一个 iPad 应用程序,最初是为纵向模式设计和编写的;我现在想添加一个 UIScrollView 以便它以横向模式滚动。选中自动布局并使用 Storyboard 构建不同的场景。(我正在关注本教程)。主要问题是当从纵向切换到横向时,框架的边界会发生巨大变化,从而导致滚动逻辑出现问题。

这是我尝试将 UIScrollView 添加到的第一个场景 (UIView) 的图像: 在此处输入图像描述

这是横向模式下的样子(无滚动): 在此处输入图像描述

这是我在该场景的 -viewDidLoad 方法中的代码:

//  create UIScrollView
UIScrollView *scroll = [[UIScrollView alloc]initWithFrame:CGRectMake(0,0,self.bookDetailView.frame.size.width, self.bookDetailView.frame.size.height)];
scroll.delegate = self;
scroll.pagingEnabled = YES;
scroll.scrollEnabled = YES;
scroll.showsVerticalScrollIndicator = YES;
CGSize scrollableSize = CGSizeMake(768, 1024);  //  size of portrait mode
scroll.contentSize = scrollableSize;

[self.view addSubview: scroll];

滚动条(尽可能细)现在显示,但尽管它按应有的方式移动,但 UIView 没有移动。纵向模式工作正常(不需要滚动),但横向模式根本不滚动(即使垂直滚动条确实移动)。我想知道是否应该放弃将滚动用于横向模式的想法,而改为为横向模式创建单独的场景。

4

1 回答 1

4

有什么理由需要单独的 UIScrollView 吗?UITableView 已经是一个滚动视图。我的猜测是您创建的 UIScrollView 的触摸事件会干扰 UITableView 的触摸事件。

于 2015-11-23T21:33:42.620 回答