在我使用Storyboards设置的UITableView
中,我需要能够添加一个粘贴到视图底部的工具栏,它不应该滚动。
与此问题不同:LINK我认为我不能将TableView子视图添加到普通视图中,然后只是以编程方式添加工具栏,因为我使用的动态单元格通过Storyboard更容易集成。
现在,这就是我所困扰的......
答案 0 :(得分:75)
如果你想在一个视图控制器中放置一个导航控制器中的显示工具栏。
代码:
- (void)viewWillAppear:(BOOL)animated
{
[self.navigationController setToolbarHidden:NO animated:YES];
}
- (void)viewWillDisappear:(BOOL)animated
{
[self.navigationController setToolbarHidden:YES animated:YES];
}
答案 1 :(得分:24)
答案 2 :(得分:15)
对于Swift用户,您可以使用以下代码:
override func viewWillAppear(animated: Bool) {
super.viewWillAppear(animated);
self.navigationController?.setToolbarHidden(false, animated: animated)
}
override func viewWillDisappear(animated: Bool) {
super.viewWillDisappear(animated);
self.navigationController?.setToolbarHidden(true, animated: animated)
}
答案 3 :(得分:9)
此补救措施适用于(2016)iOS 9.2。 我们都讨厌Apple如何让我们在像这样简单易懂的事情上浪费时间。我喜欢这种愚蠢问题的分步解决方案,所以我会与你分享!:
在View控制器的viewDidLoad()方法中,首先添加此代码:
override func viewDidLoad(animated: Bool) {
self.navigationController?.setToolbarHidden(false, animated: true)
//代码的其余部分 }
您不希望该工具栏在其他地方闲逛,因此请在您的视图中添加此工具栏 在当前窗口被解除后隐藏它:
-
override func viewWillDisappear(animated: Bool) {
super.viewWillDisappear(animated);
self.navigationController?.setToolbarHidden(true, animated: animated)
}
瞧!
答案 4 :(得分:5)
虽然您将无法使用UITableViewController作为链接类,但步骤4将允许您将其链接到常规UIViewController。
你需要在标题中使用这样的东西
@interface MyViewController : UIViewController <UITableViewDelegate, UITableViewDataSource>
在故事板中看起来像这样:
答案 5 :(得分:1)
我使用了一个带有容器视图的中间View Controller。将工具栏视图添加到中间层,并使其显示为您想要的(使用UIButtons而不是UIBarButtonItem)。
如果你这样做,让容器视图伸展到屏幕的顶部,而不是导航栏的底部,或者你会拔出你的头发,试图让滚动插图正确。
中的更多细节