UISplitViewController ผลักจาก UITabBarController

ในแอปของฉัน ฉันอยากมีสตอรี่บอร์ดเพียงอันเดียวสำหรับทั้ง iPad และ iPhone ตัวควบคุมรูทของฉันคือ UITabBarController โดยมีลูก 7 คน ส่วนใหญ่เป็น UISplitViewController

บน iPhone แท็บเพิ่มเติมจะปรากฏขึ้นโดยอัตโนมัติเพื่อเข้าถึงแท็บทั้งหมด ทำให้แท็บเหล่านั้นถูกผลักออกจากที่นั่น ส่งผลให้เกิดข้อผิดพลาด:

Split View Controllers cannot be pushed to a Navigation Controller

ฉันจะแก้ไขปัญหานี้ได้อย่างไร?

ขอบคุณมาก!


person lorenzo    schedule 18.09.2015    source แหล่งที่มา
comment
ดูสิ่งนี้: stackoverflow .com/questions/10021210/ อาจช่วยแก้ปัญหาของคุณได้   -  person Dharmesh Siddhpura    schedule 29.09.2015


คำตอบ (1)


สรุปแล้ว ในที่สุดสิ่งที่ฉันทำคือสร้าง UISplitViewControllers ของฉันโดยทางโปรแกรมเมื่ออุปกรณ์ของผู้ใช้เป็น iPad ในขณะที่ยังคงรักษาสตอรี่บอร์ดส่วนใหญ่ของฉันไว้เหมือนเดิม

เพื่อทำสิ่งนั้น:

  • ใน IB ฉันลบ viewcontrollers ทั้งหมดออกจาก UITabBarController ของฉัน (ลิงก์)
  • ฉันให้ ID สตอรี่บอร์ดแก่ UIViewControllers แต่ละรายการเหล่านี้
  • ใน DidFinishLaunchingWithOptions ของ AppDelegate ฉันได้สร้างวิธีการสร้างลำดับชั้นของมุมมองของฉัน โดยใช้ ID สตอรี่บอร์ดเพื่อสร้างอินสแตนซ์ ViewControllers และเพิ่ม UISplitViewController เมื่อใช้งานบน iPad ทั้งหมดนี้ทำร่วมกับออบเจ็กต์แหล่งข้อมูลที่ปรับแต่งความต้องการของแต่ละหน้าจอของฉันอย่างละเอียด

หวังว่าจะช่วยได้!

person lorenzo    schedule 29.09.2015