Giải pháp này giải thích cách điều khiển hướng trên các bộ điều khiển chế độ xem riêng biệt, miễn là chúng được quản lý bởi bộ điều khiển điều hướng.
Trong Xcode 5, tạo tệp mới thuộc loại "Mục tiêu-C", đặt "Danh mục" thành "xoay vòng" và chọn "UINavigationController" là "Danh mục trên".
Một vài tập tin mới sẽ xuất hiện trong dự án này, có tên gọi sau đây: UINavigationController + rotation.h UINavigationController + rotation.m
Trong tập tin .m, hãy viết đoạn mã sau:
- (BOOL) shouldAutorotate
{
return [[self topViewController] shouldAutorotate];
}
- (NSUInteger) supportedInterfaceOrientations
{
return [[self topViewController] supportedInterfaceOrientations];
}
Bằng cách này, bộ điều khiển điều hướng sẽ cho phép bộ điều khiển xem trên cùng hiện tại xác định chính sách định hướng.
Sau đó, trong mỗi bộ điều khiển chế độ xem cụ thể được quản lý bởi bộ điều khiển điều hướng, bạn có thể ghi đè lên hai phương pháp liên quan đến định hướng.
Ví dụ, nếu một bộ điều khiển xem cụ thể sẽ xuất hiện trong chỉ hướng dọc:
- (BOOL) shouldAutorotate
{
return NO;
}
- (NSUInteger) supportedInterfaceOrientations
{
return UIInterfaceOrientationMaskPortrait;
}
Hãy chắc chắn rằng định hướng mong muốn là một trong những thiết lập trong thông tin triển khai dự án. Hy vọng điều này là đầy đủ chi tiết và có thể giúp đỡ.
Nguồn
2014-02-04 17:07:02
Có thể thêm một số mã hiển thị giải pháp của bạn không? – rkh
@rkh Bạn cần mã để tạo một lớp con ghi đè một hàm? –
Không, tôi chỉ muốn giải thích giải pháp của bạn cho Victor "trong mã" vì anh ta có vẻ như một người dùng mới ... Tôi tốt :) – rkh