बस इसे यहां छोड़कर किसी भी व्यक्ति को परिभाषित प्रोटोकॉल का उपयोग आसपास के नेविगेट करने और प्रोग्राम नियंत्रकों को बदलने के लिए करना चाहता है।
@objc protocol AppWalkThroughDelegate {
@objc optional func goNextPage(forwardTo position: Int)
@objc optional func goPreviousPage(fowardTo position: Int)
}
उपर्युक्त प्रोटोकॉल का उपयोग करें और दृश्य नियंत्रकों के बीच नेविगेशन प्रबंधित करने के लिए रूट UIPageViewController की पुष्टि करें।
नीचे उदाहरण:
class AppWalkThroughViewController: UIPageViewController, UIPageViewControllerDataSource, AppWalkThroughDelegate {
// Add list of view controllers you want to load
var viewControllerList : [UIViewControllers] = {
let firstViewController = FirstViewController()
let secondViewController = SecondViewController()
// Assign root view controller as first responder
secondViewController.delegate = self
let thirdViewController = ThirdViewController()
}
override func viewDidLoad() {
super.viewDidLoad()
self.dataSource = self
}
// Navigate to next page
func goNextPage(fowardTo position: Int) {
let viewController = self.viewControllerList[position]
setViewControllers([viewController], direction:
UIPageViewControllerNavigationDirection.forward, animated: true, completion: nil)
}
}
एक बार सभी कि हासिल की है, बच्चे के दृश्य नियंत्रकों अगले या पिछले पृष्ठ पर UIPageViewController चाल प्रतिनिधि संपत्ति पर एक विशिष्ट संख्या को पारित करके AppWalkThroughDelegate तरीकों का उपयोग कर सकते हैं बनाने की जरूरत है कि।
उदाहरण नीचे: प्रतिनिधि विधि लागू एक बार बटन दबाया
class SecondViewController: UIViewController {
var delegate: AppWalkThroughDelegate!
override func viewDidLoad() {
super.viewDidLoad()
self.dataSource = self
}
@IBAction func goNextPage(_ sender: Any) {
// Can be any number but not outside viewControllerList bounds
delegate.goNextPage!(fowardTo: 2)
}
}
स्रोत
2017-08-15 04:30:44
की [? यह UIPageViewController में प्रोग्राम के रूप में बारी करने के लिए संभव पेज है] संभव डुप्लिकेट (http://stackoverflow.com/questions/7208871/is -it-possible-to-turn-page-programmatically-in-uipageviewcontroller) –