【发布时间】:2015-01-09 10:14:06
【问题描述】:
我正在使用 swift 并且有一个包含 UIViewController 的故事板,其中包含一个带有 UITableView 的 UIScrollView。
我想要做的是在表格中加载一个 excel 文件,所以我需要水平滚动。我可以设置滚动视图的内容大小:
scrollView.contentSize = CGSize(width: 3500, height: scrollView.contentSize.height)
我还需要设置 UITableView 的框架大小。当我从情节提要中设置它并显示该字段时它可以工作,但是当我从 viewDidLoad 方法以编程方式设置它时它不起作用。宽度值显示为更改为 3500,但是当我在 tableView cellForRowAtIndexPath 方法中检查时,我看到了故事板中设置的值。
【问题讨论】:
-
出于好奇,您为什么将
UITableView放在UIScrollView中?UITableView有自己的内部UIScrollView。 -
在将 UITableView 放入 UIScrollView 之前,我无法水平滚动。我是IOS开发的新手,只是认为我只能通过放入来水平滚动,因为没有它我无法滚动。如果我不创建单独的滚动视图,如何设置内部滚动视图的内容大小?
-
好吧,从技术上讲,
UITableView是UIScrollView;它是一个子类。您可以直接访问contentSize。 -
是的,刚刚意识到,因为我有另一个滚动视图,它现在没有效果。将尝试删除 UIScrollView 并让您知道。
-
我删除了 UIScrollView 并设置了 tableView 的 contentSize 但不幸的是无法水平滚动。 (回到我开始认为我必须使用 UIScrollView 的地方)
标签: ios iphone uitableview swift uiscrollview