1
にしているにもかかわらず、ここではこれまでに私のコードです表示されません。はUIPageViewControllerにボタンを追加しようとしますが、ボタンは、彼らがビュー階層
class WarmPushPageViewController: UIPageViewController {
override func viewDidLoad() {
super.viewDidLoad()
self.dataSource = self
// Do any additional setup after loading the view.
let feedViewController = storyboard!.instantiateViewController(withIdentifier: "FeedViewController")
setViewControllers([feedViewController], direction: .forward, animated: false, completion: nil)
let hashtagsButton = UIButton(frame: CGRect(x: 8, y: self.view.frame.height - 30, width: 70, height: 20))
hashtagsButton.setTitle("Hashtags", for: .normal)
hashtagsButton.tintColor = UIColor.blue
self.view.addSubview(hashtagsButton)
self.view.bringSubview(toFront: hashtagsButton)
let feedButton = UIButton(frame: CGRect(x: self.view.frame.width/2, y: self.view.frame.height - 30, width: 50, height: 20))
feedButton.setTitle("Feed", for: .normal)
feedButton.tintColor = UIColor.blue
self.view.addSubview(feedButton)
self.view.bringSubview(toFront: feedButton)
let userButton = UIButton(frame: CGRect(x: self.view.frame.width-65, y: self.view.frame.height - 30, width: 50, height: 20))
userButton.setTitle("User", for: .normal)
userButton.tintColor = UIColor.blue
self.view.addSubview(userButton)
self.view.bringSubview(toFront: userButton)
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
/*
// MARK: - Navigation
// In a storyboard-based application, you will often want to do a little preparation before navigation
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
// Get the new view controller using segue.destinationViewController.
// Pass the selected object to the new view controller.
}
*/
}
extension WarmPushPageViewController: UIPageViewControllerDataSource {
func pageViewController(_ pageViewController: UIPageViewController, viewControllerBefore viewController: UIViewController) -> UIViewController? {
if let _ = viewController as? UserViewController {
let feedViewController = storyboard!.instantiateViewController(withIdentifier: "FeedViewController")
return feedViewController
} else if let _ = viewController as? FeedViewController {
let hashtagsViewController = storyboard!.instantiateViewController(withIdentifier: "HashtagsViewController")
return hashtagsViewController
}
return nil
}
func pageViewController(_ pageViewController: UIPageViewController, viewControllerAfter viewController: UIViewController) -> UIViewController? {
if let _ = viewController as? HashtagsViewController {
let feedViewController = storyboard!.instantiateViewController(withIdentifier: "FeedViewController")
return feedViewController
} else if let _ = viewController as? FeedViewController {
let userViewController = storyboard!.instantiateViewController(withIdentifier: "UserViewController")
return userViewController
}
return nil
}
}
何らかの理由で、私はのマージンを取得後、
ラベルは私のビュー階層にも存在するが、私の仮説は、問題がどこかにここに置くことである:最終ページには、ラベルが余白に表示
最後の目標は、特定のボタンの内側をタッチすると、それぞれのページにつながるスケッチアセットを使用して独自のカスタムボタンを作成することです。
ありがとうございます!これを試し、あなたに知らせる:) – srinitude