我正在使用分段控件来补充制表符控制器并在该部分中添加额外选项。
分段控件在三个容器之间切换,每个容器都有一个嵌入式tableviewcontainer,我可以根据需要显示/隐藏它们之间的转换:
@IBOutlet var listPicker: UISegmentedControl!
@IBOutlet var dueView: UIView!
@IBOutlet var nextView: UIView!
@IBOutlet var doneView: UIView!
switch sender.selectedSegmentIndex{
case 0:
dueView.hidden = false
nextView.hidden = true
doneView.hidden = true
...
}
每个视图都链接到故事板中的UITableViewController:
有没有一种方法可以像标签栏控制器那样刷新其内容,而不仅仅是显示(取消隐藏)视图(
答案 0 :(得分:0)
首先打印以下内容:
sudo service gitlab restart
Starting GitLab Unicorn
Starting GitLab Sidekiq
Starting gitlab-git-http-server
/etc/init.d/gitlab: 223: /etc/init.d/gitlab: bin/web: not found
/etc/init.d/gitlab: 230: /etc/init.d/gitlab: bin/background_jobs: not found
..............................Waited 30s for the processes to write their pids, something probably went wrong.
然后您将知道print(self.childViewControllers)
的子索引,然后使用以下
ViewController
假设您有以下容器及其持有 @IBAction func segmentValueChanged(sender: AnyObject) {
switch (sender.selectedSegmentIndex) {
case 0:
dueView.hidden = false
nextView.hidden = true
doneView.hidden = true
// create object from your nextView and refresh it
var myClass : ViewController = self.childViewControllers[0] as! ViewController
myClass.tableView.reloadData()
myClass.viewWillAppear(false)
break;
default:
break;
}
}
:
ViewControllers
如果它在故事板的视图中排序,如1- dueView然后2-nextView 3- doneView那么索引应该是,但这又取决于你如何对它们进行排序以显示:
dueView.hidden = false
nextView.hidden = true
doneView.hidden = true
更新:
由于您在视图控制器之前有导航控制器,因此您可能需要强制转换以获取顶视图控制器,然后重新加载数据。
祝你好运!