Tôi có hệ thống phân cấp bộ điều khiển chế độ xem và bộ điều khiển trên cùng được hiển thị dưới dạng một phương thức và muốn biết cách hiển thị thanh điều hướng khi sử dụng
'UIViewController:presentViewController:viewControllerToPresent:animated:completion'
Các tài liệu cho 'presentViewController: animation: complete:' lưu ý:
'Trên iPhone và iPod touch, giao diện được trình bày luôn ở chế độ toàn màn hình. Trên iPad, bản trình bày phụ thuộc vào giá trị trong thuộc tính modalPresentationStyle. '
Đối với 'modalPresentationStyle', tài liệu cho biết:
Kiểu trình bày xác định cách hiển thị trên màn hình bộ điều khiển dạng xem được trình bày theo phương thức. Trên iPhone và iPod touch, bộ điều khiển chế độ xem phương thức luôn được hiển thị toàn màn hình, nhưng trên iPad có một số tùy chọn trình bày khác nhau.
Có cách nào để đảm bảo rằng thanh điều hướng hiển thị bên dưới thanh trạng thái sau khi điều khiển chế độ xem tự hiển thị không? Tôi có nên giải thích tài liệu là, bạn không nhận được bất kỳ tùy chọn nào của iPhone / iPod và chỉ trên iPad?
Trước đây, tôi đã sử dụng 'UIViewController:presentModalViewController:animated'
nó hoạt động tốt, nhưng kể từ iOS 5.0, API không được dùng nữa nên tôi đang chuyển sang cái mới.
Về mặt trực quan, những gì tôi muốn làm là để bộ điều khiển mới trượt vào từ cuối màn hình, giống như API cũ đã từng làm.
[đang cập nhật bằng mã]:
// My root level view:
UIViewController *vc = [[RootViewController alloc]
initWithNibName:nil
bundle:[NSBundle mainBundle]];
navController = [[UINavigationController alloc] initWithRootViewController:vc];
....
// Within the RootViewController, Second view controller is created and added
// to the hierarchy. It is this view controller that is responsible for
// displaying the DetailView:
SecondTierViewController *t2controller = [[SecondTierViewController alloc]
initWithNibName:nil
bundle:[NSBundle mainBundle]];
[self.navigationController pushViewController:t2controller animated:YES];
// Created by SecondTierViewController
DetailViewController *controller = [[DetailViewController alloc] initWithNibName:nil
bundle:[NSBundle mainBundle]];
controller.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
controller.modalPresentationStyle = UIModalPresentationCurrentContext;
[self.navigationController presentViewController:controller
animated:YES
completion:nil];