Я не знаю, почему он не переходит к следующему viewController. Вместо этого он перемещается на пустую страницу, и ползунок также не перемещается. Но когда я нажимаю на вкладки, он работает нормально и скользит к следующему viewController. На самом деле не уверен, почему это так? Любая помощь приветствуется. Спасибо
import UIKit
import XLPagerTabStrip
class mainProfileViewController: ButtonBarPagerTabStripViewController {
@IBOutlet weak var scrollView: UIScrollView!
@IBOutlet weak var contentView: UIView!
@IBOutlet weak var headerView: HeaderView!
@IBOutlet weak var barView: ButtonBarView!
@IBOutlet weak var viewContainer: UIScrollView!
let grayColor = UIColor(red: 21/255.0, green: 21/255.0, blue: 24/255.0, alpha: 1.0)
override func viewDidLoad() {
settings.style.buttonBarBackgroundColor = grayColor
settings.style.buttonBarItemBackgroundColor =
grayColor
settings.style.selectedBarBackgroundColor = UIColor.init(red: 14.0/255, green: 122.0/255, blue: 254.0/255, alpha: 1.0)
settings.style.buttonBarItemFont = UIFont(name: "AppleSDGothicNeo-Bold", size:15) ?? UIFont.systemFont(ofSize: 18)
settings.style.selectedBarHeight = 2.0
settings.style.buttonBarMinimumLineSpacing = 0
settings.style.buttonBarItemTitleColor = .red
settings.style.buttonBarItemsShouldFillAvailableWidth = true
settings.style.buttonBarHeight = 40
settings.style.buttonBarLeftContentInset = 20
settings.style.buttonBarRightContentInset = 20
changeCurrentIndexProgressive = { (oldCell: ButtonBarViewCell?, newCell: ButtonBarViewCell?, progressPercentage: CGFloat, changeCurrentIndex: Bool, animated: Bool) -> Void in
guard changeCurrentIndex == true else { return }
oldCell?.label.textColor = UIColor(red: 138/255.0, green: 138/255.0, blue: 144/255.0, alpha: 1.0)
newCell?.label.textColor = .white
}
super.viewDidLoad()
}
override func viewControllers(for pagerTabStripController: PagerTabStripViewController) -> [UIViewController] {
let child_1 = storyboard!.instantiateViewController(withIdentifier: "profilePhotoViewController") as! profilePhotoViewController
let child_2 = storyboard!.instantiateViewController(withIdentifier: "profileVideoController") as! profileVideoController
return [child_1, child_2]
}
}
child_1 ViewController
class photosNewsfeedViewController: UIViewController, IndicatorInfoProvider {
var itemInfo: IndicatorInfo = "Photos"
override func viewDidLoad() {
super.viewDidLoad()
}
func indicatorInfo(for pagerTabStripController: PagerTabStripViewController) -> IndicatorInfo {
return itemInfo
}
}
child_2 ViewController
class videoNewsfeedViewController: UIViewController, IndicatorInfoProvider {
var itemInfo: IndicatorInfo = "Videos"
override func viewDidLoad() {
super.viewDidLoad()
}
func indicatorInfo(for pagerTabStripController: PagerTabStripViewController) -> IndicatorInfo {
return itemInfo
}
}