Ich bin neu in iOS und habe derzeit 3 Ansichten und möchte die Wischgeste verwenden, um zwischen ihnen zu navigieren. Swiping funktioniert. Die rote bg-Ansicht lädt zuerst, wie ich es will, und das Wischen funktioniert gut, aber das Tippen auf die Schaltfläche Weiter macht nichts. Könnte mir bitte jemand einen Hinweis geben? Ich nähere mich das falsch, aber kann nicht scheinen, jede Hilfe auf GoogleUIPageViewController mit untergeordneten ViewControllern
In meinem Projekt zu finden habe ich eine MemberCardViewController, die die UIPageViewController Griffe:
class MemberCardViewController: UIPageViewController, UIPageViewControllerDataSource, UIPageViewControllerDelegate {
lazy var viewArray: [UIViewController] = {
return [self.ViewControllerInstance(name: "CalendarView"),
self.ViewControllerInstance(name: "IdCardView"),
self.ViewControllerInstance(name: "MemberInfoView")]
}()
private func ViewControllerInstance(name: String) -> UIViewController {
return UIStoryboard(name: "MemberCardViewController", bundle: nil).instantiateViewController(withIdentifier: name)
}
override func viewDidLoad() {
super.viewDidLoad()
self.dataSource = self
self.delegate = self
loadViewController(viewPosition: 1)
}
func loadViewController(viewPosition: Int) {
if let viewController = viewArray.get(at: viewPosition) {
setViewControllers([viewController], direction: .forward, animated: true, completion: nil)
}
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
...
Und jetzt habe ich auch erstellt ein IdCardViewController die
class IdCardViewController: UIViewController {
var pvc = MemberCardViewController()
@IBAction func loadRight(_ sender: Any) {
pvc.loadViewController(viewPosition: 2)
}
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
Das Problem, das ich mit Blick auf bin jetzt entspricht, ist auf der ID-Karte (roter Hintergrund Ansicht), dass w Wenn die Schaltfläche Weiter in der ID-Karte angeklickt wird, möchte ich die Ansicht "Mitgliederinformationen" laden, aber im Moment passiert nichts, wenn darauf geklickt wird. Allerdings habe ich Breakpoints in MemberCardViewControllers loadViewController()
Methode eingerichtet und kann sehen, dass die App es erreicht, wenn auf die Schaltfläche geklickt wird, jedoch ändert sich die Ansicht nicht zu Member Info
.
erhalten Sie keinen Hinweis auf das Problem von Ihrem Code, können Sie bitte Ihr Projekt mit mir teilen ([email protected]). Ich werde einen Blick darauf werfen und Sie aktualisieren – arunjos007