问题描述
直到现在,我仍然不知道如何在一个视图控制器中切换多个视图.我的故事板就是这样.
Until now I still can't figure how to switch multiple views in one view controller. My storyboard is like this one.
现在,我想在视图控制器中嵌入两个视图.
Right now I want to embed two views inside my view controller.
到目前为止,我的分段控制代码可在一个视图控制器中切换两个视图.
My code for segmented control to switch two views in one view controller so far.
import UIKit
class PopularHistoryViewController: UIViewController {
@IBOutlet weak var segmentedControl: UISegmentedControl!
@IBAction func indexChanged(sender: UISegmentedControl) {
switch segmentedControl.selectedSegmentIndex
{
case 0:
NSLog("Popular selected")
//show popular view
case 1:
NSLog("History selected")
//show history view
default:
break;
}
}
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
}
另一件事,如果我在控制器中放入两个视图,最好的区分方法是什么?
Another thing, If I put two views inside my controller, what is best practice to differentiate it?
推荐答案
您可以使用UIView的> isHidden
属性以显示/隐藏所需的视图.首先,您必须通过界面"构建器将两个视图链接到IBOutlets
You can use the isHidden
property of the UIView
to show/hide your required views.First you have to link both views to IBOutlets
through the Interface builder
@IBOutlet weak var historyView: UIView!
@IBOutlet weak var popularView: UIView!
@IBAction func indexChanged(_ sender: UISegmentedControl) {
switch segmentedControl.selectedSegmentIndex {
case 0:
historyView.isHidden = true
popularView.isHidden = false
case 1:
historyView.isHidden = false
popularView.isHidden = true
default:
break;
}
}
注意:它在Swift 1和2中被命名为hidden
.
Note: it was named hidden
in Swift 1 and 2.
这篇关于Swift-分段控件-切换多个视图的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!