2010-08-26 40 views
6

Ứng dụng của tôi sử dụng 2 UIWindows. Đầu tiên được hiển thị có bộ điều khiển TabBar với ViewControllers chỉ xoay theo hướng dọc. Đến đây mọi thứ đều ổn.Nhiều vấn đề xoay vòng Windows - iPhone/iPad

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { 
return (UIInterfaceOrientationIsPortrait(interfaceOrientation)); 
} 

Trên cửa sổ khác Tôi có UIViewController quay về mọi hướng.

Vấn đề là khi tôi hiển thị cửa sổ thứ hai

[secondWindow makeKeyAndVisible]; 

Và sau đó trở về đầu tiên một

[firstWindow makeKeyAndVisible]; 

Các statusbar quay để mọi hướng và shouldAutorotateToInterfaceOrientation sự kiện không được sa thải. Làm thế nào tôi có thể giải quyết vấn đề?

Trả lời

4

Phạt tiền để có nhiều UIWindows trong một ứng dụng, nhưng báo trước ở đây là mã của Apple dường như kiểm tra qua mọi UIWindow bạn có và xem liệu trình điều khiển chế độ xem trên cùng có cho phép xoay vòng không. Nếu bất kỳ cửa sổ nào cho phép xoay thanh trạng thái của bạn sẽ xoay vòng bất kể UIWindow có ở phía trước hay không.

Trong ứng dụng của riêng tôi, tôi ẩn UIWindow Tôi không sử dụng và thêm kiểm tra isHidden vào UIViewControllers liên quan để không cho phép xoay nếu cửa sổ hiện bị ẩn.

1

Phạt tiền để có nhiều UIWindows trong một ứng dụng, nhưng báo trước ở đây là mã của Apple dường như kiểm tra mọi UIWindow bạn có và xem bộ điều khiển chế độ xem trên cùng có cho phép xoay vòng không.

Mỗi câu trả lời, đã làm nhiều tinh hoàn và nhận được kết luận rằng xoay vòng thanh trạng thái phụ thuộc vào bộ điều khiển xem trên cùng của mỗi cửa sổ.

Các vấn đề liên quan