คำถามติดแท็ก uinavigationcontroller

คลาส UINavigationController ใช้ตัวควบคุมมุมมอง iOS เฉพาะที่จัดการการนำทางของเนื้อหาตามลำดับชั้น

13
iPhone: การตั้งค่าชื่อแถบนำทาง
สวัสดีทุกคน ฉันยังใหม่สำหรับการพัฒนา iPhone และฉันมีปัญหาเล็กน้อยในการหาวิธีเปลี่ยนชื่อแถบนำทาง สำหรับคำถามอื่นในไซต์นี้มีคนแนะนำให้ใช้: viewController.title = @"title text"; แต่นั่นไม่ได้ผลสำหรับฉัน ... ฉันจำเป็นต้องเพิ่ม UINavigationController เพื่อทำสิ่งนี้ให้สำเร็จหรือไม่? หรืออาจเป็นเพียงเต้าเสียบจากคลาสย่อย UIViewController ของฉัน? ถ้ามันช่วยได้ฉันกำหนดแถบนำทางใน IB และฉันกำลังพยายามตั้งชื่อเรื่องในคลาสย่อย UIViewController ของฉัน นี่เป็นอีกหนึ่งสิ่งง่ายๆที่ทำให้ฉันปวดหัว การใส่ self.title = @ "title text"; ในviewDidLoadและinitWithNibNameไม่ทำงานเช่นกัน ใครรู้ว่าเกิดอะไรขึ้นและจะทำให้มันเกิดขึ้นได้อย่างไร? ขอบคุณ!

17
จะเพิ่ม 2 ปุ่มใน UINavigationbar ทางด้านขวาโดยไม่ใช้ IB ได้อย่างไร?
ฉันจะเพิ่ม 2 ปุ่มในUINavigationBarโดยไม่มี XIB ได้อย่างไร ควรจัดเรียงปุ่ม 2 ปุ่มทางด้านขวาของไฟล์UINavigationBar. ฉันรู้ว่าฉันจะเพิ่มปุ่มเดียวได้อย่างไร แต่สองปุ่มล่ะ?

18
ไม่ปัดกลับเมื่อซ่อนแถบนำทางใน UINavigationController
ฉันชอบชุดรูดที่สืบทอดมาจากการฝังมุมมองของคุณในไฟล์UINavigationController. แต่น่าเสียดายที่ฉันไม่สามารถดูเหมือนจะหาทางที่จะซ่อนได้แต่ยังคงมีการติดต่อกลับกระทะรูดNavigationBar gestureฉันสามารถเขียนท่าทางสัมผัสที่กำหนดเองได้ แต่ฉันไม่ต้องการและใช้การUINavigationControllerปัดไปด้านหลังgestureแทน ถ้าฉันยกเลิกการเลือกในกระดานเรื่องราวการปัดไปด้านหลังจะไม่ทำงาน หรือถ้าฉันซ่อนมันโดยทางโปรแกรมสถานการณ์เดียวกัน - (void)viewDidLoad { [super viewDidLoad]; [self.navigationController setNavigationBarHidden:YES animated:NO]; // and animated:YES } ไม่มีวิธีซ่อนด้านบนNavigationBarและยังมีรูด?

13
วิธีการนำทางจาก View Controller หนึ่งไปยังอีกตัวหนึ่งโดยใช้ Swift
ฉันต้องการนำทางจากตัวควบคุมมุมมองหนึ่งไปยังอีกมุมมองหนึ่ง ฉันจะแปลงรหัส Objective-C ต่อไปนี้เป็น Swift ได้อย่างไร UIViewController *viewController = [[self storyboard] instantiateViewControllerWithIdentifier:@"Identifier"]; UINavigationController *navi = [[UINavigationController alloc] initWithRootViewController:viewController]; [self.navigationController pushViewController:navi animated:YES];

5
โดยใช้โปรแกรมเรียกปุ่มย้อนกลับของตัวควบคุมการนำทางบน iOS
ในแอพ iPhone ที่ใช้ UINavigationController ในวิธีการหนึ่งฉันต้องการดำเนินการที่เทียบเท่ากับโปรแกรมของปุ่มย้อนกลับที่กดและย้อนกลับไปดู เช่นกดปุ่มงานโดยอัตโนมัติตามที่เห็นที่นี่: มีการโทร iOS ทั่วไปที่ฉันสามารถโทรได้หรือต้องการข้อมูลเพิ่มเติมหรือไม่?

16
ฉันจะแสดงมุมมองจาก UINavigationController และแทนที่ด้วยการดำเนินการอื่นในการดำเนินการเดียวได้อย่างไร
ฉันมีแอปพลิเคชันที่ฉันต้องการลบมุมมองหนึ่งออกจากสแต็กของ UINavigationController และแทนที่ด้วยอีกมุมมองหนึ่ง สถานการณ์คือมุมมองแรกสร้างรายการที่แก้ไขได้จากนั้นแทนที่ตัวเองด้วยตัวแก้ไขสำหรับรายการ เมื่อฉันทำวิธีแก้ปัญหาที่ชัดเจนในมุมมองแรก: MyEditViewController *mevc = [[MYEditViewController alloc] initWithGizmo: gizmo]; [self retain]; [self.navigationController popViewControllerAnimated: NO]; [self.navigationController pushViewController: mevc animated: YES]; [self release]; ฉันมีพฤติกรรมแปลก ๆ โดยปกติมุมมองตัวแก้ไขจะปรากฏขึ้น แต่ถ้าฉันพยายามใช้ปุ่มย้อนกลับบนแถบนำทางฉันได้รับหน้าจอพิเศษบางส่วนว่างเปล่าและบางส่วนก็เมา ชื่อเรื่องจะสุ่มเกินไป มันเหมือนกับว่าสแต็ก nav ถูกเลื่อนออกไปอย่างสมบูรณ์ อะไรจะเป็นแนวทางที่ดีกว่าสำหรับปัญหานี้? ขอบคุณ Matt

9
เหตุใดแอป SwiftUI ของฉันจึงพังเมื่อนำทางด้านหลังหลังจากวาง "NavigationLink" ไว้ใน "navigationBarItems`" ใน "NavigationView"
ตัวอย่างที่ทำซ้ำได้น้อยที่สุด (Xcode 11.2 เบต้าทำงานได้ใน Xcode 11.1): struct Parent: View { var body: some View { NavigationView { Text("Hello World") .navigationBarItems( trailing: NavigationLink(destination: Child(), label: { Text("Next") }) ) } } } struct Child: View { @Environment(\.presentationMode) var presentation var body: some View { Text("Hello, World!") .navigationBarItems( leading: Button( action: { …

3
ชื่อเรื่องใหญ่เป็นสวิตช์ชื่อเรื่องขนาดเล็กในแถบนำทางไม่ราบรื่น iOS 13 เหนียว
ฉันมีกับค่าเริ่มต้นของมันUINavigationControllernavigationBar.prefersLargeTitles = true ฉันกำลังเปลี่ยนที่falseเมื่อฉันpush เป็นฉากใหม่ช่วยให้เรียกว่า ( DetailsViewController) viewWillDisappearโดยการเปลี่ยนมันลงไป override func viewWillDisappear(_ animated: Bool) { super.viewWillDisappear(animated) navigationController?.navigationBar.prefersLargeTitles = false } ตอนนี้ในฉันใช้DetailsViewControllerwillMove(to parent:) override func willMove(toParent parent: UIViewController?) { navigationController?.navigationBar.prefersLargeTitles = true } หากต้องการเปลี่ยนกลับเป็นชื่อใหญ่ สังเกตภาพรวมที่แนบมาของวิธีที่iOS 13ทำกับวิธีที่iOS 12ทำอยู่การพิจารณาว่าiOS 12นั้นเป็นพฤติกรรมที่ถูกต้อง iOS 13 : iOS 12 :
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.