Tôi có một helloController đó là một UIViewController, nếu tôi xoay thiết bị, tôi muốn nó thay đổi nó để tải một nib mới "helloHorizontal.xib", làm thế nào tôi có thể làm gì? cảm ơn bạn.Làm thế nào để thay đổi ngòi mới khi tôi xoay thiết bị?
6
A
Trả lời
1
Bạn có thể bạn một cái gì đó như thế này, (tôi không có xcode tiện dụng do đó, mã này có thể không hoàn toàn chính xác)
-(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
if((interfaceOrientation == UIInterfaceOrientationLandscapeRight) || (interfaceOrientation == UIInterfaceOrientationLandscapeLeft)){
WhatYourNewViewClassISCAlled* newView = [[WhatYourNewViewClassISCAlled alloc] initWithNibName:@"NIBNAME" bundle:[NSBundle mainBundle]];
[self.navigationController pushViewController:newView animated:YES];
}
1
Đây là cách chính xác, tôi tin. Tôi đang sử dụng nó trong các ứng dụng của tôi và nó hoạt động hoàn hảo
- gây nên trên SẼ xoay, không NÊN xoay (chờ đợi cho đến khi anim xoay là về để bắt đầu)
- sử dụng quy ước đặt tên của Apple cho cảnh quan/file chân dung (Default.png là Default-landscape.png nếu bạn muốn Apple để tự động tải một phiên bản nằm ngang)
- load lại các NIB mới
- mà resets các self.view - điều này sẽ tự động cập nhật màn hình
- và sau đó nó gọi viewDidLoad (Apple sẽ KHÔNG gọi nó cho bạn, nếu bạn nạp lại thủ công một NIB)
(NB stackoverflow.com đòi hỏi câu này ở đây - đó là một lỗi trong định dạng mã)
-(void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration
{
if(UIInterfaceOrientationIsLandscape(toInterfaceOrientation))
{
[[NSBundle mainBundle] loadNibNamed:[NSString stringWithFormat:@"%@-landscape", NSStringFromClass([self class])] owner:self options:nil];
[self viewDidLoad];
}
else
{
[[NSBundle mainBundle] loadNibNamed:[NSString stringWithFormat:@"%@", NSStringFromClass([self class])] owner:self options:nil];
[self viewDidLoad];
}
}
Các vấn đề liên quan
- 1. Tôi nên nhập inputAccessoryView để thay đổi kích thước khi xoay thiết bị như thế nào?
- 2. Khi thiết bị iOS xoay, làm cách nào để thay đổi hướng chỉ một phần tử?
- 3. chế độ xem "làm mới" trên xoay thiết bị
- 4. Làm cách nào để tạo thiết bị chuột ảo mới trên thiết bị Android của tôi?
- 5. Thay đổi chiều cao của chế độ xem đầu vào tùy chỉnh khi thiết bị xoay
- 6. Làm thế nào tôi sẽ tải một xib khi định hướng thiết bị được thay đổi trong xcode?
- 7. Thay đổi kích thước UINavigationBar khi xoay
- 8. Làm cách nào để mô phỏng thay đổi hướng của thiết bị Android của tôi?
- 9. Làm thế nào để xoay ứng dụng của tôi 180 độ lộn ngược khi xoay thiết bị 180 độ lộn ngược?
- 10. Làm thế nào để thay đổi thư mục tập tin đầu ra dựa trên thiết bị
- 11. UIDynamics và Xoay thiết bị
- 12. iOS Làm thế nào để làm mới ScrollView khi mô hình của nó thay đổi?
- 13. Làm thế nào để ngăn chặn WebView tự động làm mới khi màn hình xoay
- 14. Làm thế nào để vô hiệu hóa hành động onCreate khi định hướng sẽ thay đổi?
- 15. Văn bản của TextView biến mất khi thiết bị xoay
- 16. Làm cách nào để bạn buộc thay đổi hướng trong thử nghiệm Thiết bị Android?
- 17. Làm thế nào để chạy tập tin php của tôi từ thiết bị đầu cuối mac
- 18. làm thế nào để đóng thiết bị đầu cuối geany
- 19. mảnh ViewPager biến mất khi thay đổi màn hình xoay
- 20. iOS: Thay đổi Âm lượng Thiết bị
- 21. Tôi làm cách nào để thay đổi URL mà không cần làm mới trang như Google+?
- 22. Làm thế nào để biết khi nào thiết bị iOS được cắm vào?
- 23. Làm thế nào để biết khi nào một thiết bị lưu trữ USB mới được kết nối trong Qt?
- 24. Làm cách nào để mô phỏng xoay thiết bị bằng trình giả lập Android?
- 25. Làm thế nào để xoay UITableViewCellAccessoryDisclosureIndicator?
- 26. Force iOS ViewController xoay theo hướng thiết bị sau khi mở khóa xoay có lập trình
- 27. Làm thế nào để xoay CannonJS RigidBody?
- 28. Tại sao ứng dụng Cordova/PhoneGap iOS của tôi không xoay khi thiết bị quay?
- 29. Làm cách nào để thiết bị của tôi rung?
- 30. Làm thế nào để thay đổi mức slf4j khi chạy?
Nhưng sau đó xem chân dung theo định hướng vẫn sẽ được phát trên stack, phải không? Vì vậy, nút quay lại sẽ trỏ đến điều sai. –
Điểm tốt, bạn có thể ẩn thanh điều hướng khi các chế độ xem được xoay hoặc có chế độ xem đã được tạo và mờ dần và mờ dần chế độ xem khác khi xoay vòng xuất hiện. – octermircty