将UIToolbar锁定到UITableViewController的顶部

时间:2015-09-05 15:37:20

标签: ios swift uitableview xcode6.4

我在Objective-c和Swift中都有很多问题要求如何将UIToolbar锁定到UITableViewController的顶部,我将添加到该列表中。 然而,其他人没有回答我的问题。我需要将它锁定到视图控制器的顶部,以便它不被程序视为单元格,因此它不会向下移动,而是锁定在顶部。

我发现的所有其他答案都要我

  

(a)将UITableViewController嵌入UINavigationViewController

  

(b)使用带有UITableView的UIViewController


我不想做其中任何一个。
我想保留一个UITableViewController - 而不是用UIViewController和UITableView替换它 - 我不想使用UINavigationViewController - 我试图不这样做,因为它在应用程序的其余部分引起了大量问题(可以修复,但我不想这样做)。

1 个答案:

答案 0 :(得分:0)

你所要求的是不合理的。 UITableViewController的根视图是UIScrollView。您在UITavleViewController中添加为子视图的每个视图都必须是该滚动视图的一部分,因此将随之滚动。

要使其工作,您必须采用您提到的其中一个选项(转移到具有表视图的UIViewController作为子视图可​​能会导致应用程序中断最少)。

我能想到几个不合理的解决方案: - 在UITableViewController中实现scrollviewDidScroll委托方法,并不断重新定位scrollview中的tour工具栏,使其看起来始终位于顶部(工具栏可能会抖动并且看起来很糟糕) - 在包含工具栏的整个应用程序之上创建一个新的UIWindow(不要这样做,这是一个糟糕的主意)。