บันทึก:
ดูคำตอบที่ยอมรับ (ไม่ได้รับการโหวตสูงสุด) สำหรับวิธีแก้ปัญหาตั้งแต่ iOS 4.3
นี้คำถามที่เป็นเรื่องเกี่ยวกับพฤติกรรมที่พบในแป้นพิมพ์ iPad ที่จะปฏิเสธที่จะถูกไล่ออกถ้าแสดงในกิริยาโต้ตอบกับตัวควบคุมนำทาง
โดยทั่วไปถ้าฉันแสดงตัวควบคุมการนำทางด้วยบรรทัดต่อไปนี้:
navigationController.modalPresentationStyle = UIModalPresentationFormSheet;
แป้นพิมพ์ปฏิเสธที่จะถูกไล่ออก หากฉันใส่ความคิดเห็นในบรรทัดนี้แป้นพิมพ์ก็หายไป
...
ฉันมีสองฟิลด์ข้อความชื่อผู้ใช้และรหัสผ่าน ชื่อผู้ใช้มีปุ่มถัดไปและรหัสผ่านมีปุ่มเสร็จสิ้น แป้นพิมพ์จะไม่หายไปหากฉันนำเสนอสิ่งนี้ในตัวควบคุมการนำทางแบบโมดอล
WORKS
broken *b = [[broken alloc] initWithNibName:@"broken" bundle:nil];
[self.view addSubview:b.view];
ไม่ทำงาน, ไม่เป็นผล
broken *b = [[broken alloc] initWithNibName:@"broken" bundle:nil];
UINavigationController *navigationController =
[[UINavigationController alloc]
initWithRootViewController:b];
navigationController.modalPresentationStyle = UIModalPresentationFormSheet;
navigationController.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
[self presentModalViewController:navigationController animated:YES];
[navigationController release];
[b release];
ถ้าฉันลบส่วนควบคุมการนำทางและแสดง 'b' เป็นตัวควบคุมมุมมอง modal เองมันทำงาน ตัวควบคุมการนำทางมีปัญหาหรือไม่
WORKS
broken *b = [[broken alloc] initWithNibName:@"broken" bundle:nil];
b.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
[self presentModalViewController:b animated:YES];
[b release];
WORKS
broken *b = [[broken alloc] initWithNibName:@"broken" bundle:nil];
UINavigationController *navigationController =
[[UINavigationController alloc]
initWithRootViewController:b];
[self presentModalViewController:navigationController animated:YES];
[navigationController release];
[b release];
UINavigationController
ชั้นเรียน ไชโย
resignFirstResponder
กำลังดำเนินการ แต่แป้นพิมพ์ยังคงปรากฏอยู่ สถานการณ์ของฉัน (PresentationFormSheet พร้อมการนำทาง contrllr) นั้นเหมือนกับของคุณทุกประการ ขอบคุณตัน !!