Tôi đã thực hiện một ứng dụng iPhone từ lâu và bây giờ tôi đang nghĩ đến việc làm cho nó trở thành một ứng dụng toàn cầu, nhưng tôi đã tự hỏi liệu tôi có thể sử dụng Bảng phân cảnh để tạo phiên bản iPad hay không, vì vậy đối với iPhone, nó sẽ tải một MainWindow.xib và iPad nó sẽ tải một tập tin MainStoryboard. Điều này có thể không?Bạn có thể tạo một ứng dụng toàn cầu bằng cả MainWindow.xib cho iPhone và Storyboard cho iPad không?
Bạn có thể tạo một ứng dụng toàn cầu bằng cả MainWindow.xib cho iPhone và Storyboard cho iPad không?
Trả lời
Có, nhưng bạn thực sự phải tạo hai bảng phân cảnh riêng biệt (1 cho iPhone và 1 cho iPad).
Trong bảng phân cảnh của iPhone, chỉ cần kéo mainwindow.xib của bạn vào giữa rootViewController và đảm bảo rằng màn hình đó ở chế độ toàn màn hình.
Sau đó, bạn có thể làm bất cứ điều gì bạn muốn với bảng phân cảnh iPad của bạn.
Đảm bảo rằng hai tệp bảng phân cảnh của bạn được liên kết chính xác trong tóm tắt dự án của bạn!
Nghe hay, tôi sẽ cho nó đi và xem điều gì xảy ra, cảm ơn bạn rất nhiều. – user1790012
Nó sẽ được đơn giản để bạn có thể sử dụng một kịch bản trên iPad và ngòi trên iPhone nếu bạn không bộ giao diện chính (NSMainNibFile
trong Info.plist) hoặc một Storyboard Main (NSMainStoryboardFile
trong Info.plist).
Thay vào đó, hãy di chuyển ứng dụng của bạn ra khỏi MainWindow.xib
và để UIApplicationMain
khởi tạo nó bằng cách chuyển tên lớp làm đối số thứ tư cho UIApplicationMain
trong main
. Đặt ứng dụng ủy quyền cho Chủ sở hữu tệp là MainWindow.xib
.
Trong ứng dụng của đại biểu application:didFinishLaunchingWithOptions:
, bạn có thể kiểm tra thành ngữ giao diện.
Nếu thành ngữ giao diện là iPhone, hãy tải MainWindow
bằng cách sử dụng -[NSBundle loadNibNamed:owner:options:]
.
Nếu thành ngữ giao diện là iPad, hãy tạo cửa sổ của bạn, tải MainStoryboard
sử dụng +[UIStoryboard storyboardWithName:bundle:]
, khởi tạo bộ điều khiển chế độ xem ban đầu với -[UIStoryboard instantiateInitialViewController]
và đặt bộ điều khiển chế độ xem đó làm bộ điều khiển chế độ xem gốc của cửa sổ.
Gazzini đúng và có câu trả lời đầu tiên trong khi tôi đang nghiên cứu để xác nhận rằng điều này đúng là & tương đối đơn giản trước khi tôi nhập câu trả lời của riêng mình. Vì vậy, +1 cho anh ta.
Bạn không cần hai bảng phân cảnh riêng biệt. Bạn chỉ cần một bảng phân cảnh cho một kiến trúc và các tệp XIB của bạn cho kiến trúc mà bạn đã hỗ trợ.
Đây là một ảnh chụp màn hình có thể giúp bạn thấy những gì tôi đã làm trong dự án thử nghiệm của riêng tôi:
Đơn giản chỉ cần chỉnh sửa plist của ứng dụng của bạn sử dụng một "ngòi" tập tin cho kiến trúc cụ thể mà bạn đã có các tệp XIB và sau đó chỉ định các bảng phân cảnh cho kiến trúc mới.
Cảm ơn bạn rất nhiều cho câu trả lời của bạn quá, nhưng làm một số nghiên cứu tôi thấy rằng để gửi một ứng dụng cho App Store, trong info.plist của tôi, tôi chỉ có thể đặt NSMainNIBFile hoặc UIMainStoryboardFile. Tôi tìm thấy điều này trong Hướng dẫn tham khảo khóa danh sách thuộc tính thông tin, trong đó thông báo "NSMainNIBFile: Khóa này loại trừ lẫn nhau với khóa 'UIMainStoryboardFile' (trang 77). Bạn nên bao gồm một trong các khóa trong tệp Info.plist của mình nhưng không phải cả hai . " – user1790012
- 1. Cách chuyển một ứng dụng iPhone sang iPad (Storyboard)
- 2. Ứng dụng toàn cầu dành cho iPad không tải các tệp .xib trên iPad?
- 3. đặt hình nền cho toàn bộ ứng dụng iPhone/iPad
- 4. Gửi ứng dụng toàn cầu dưới dạng ứng dụng chỉ dành cho iPad tới Apple
- 5. Có thể in từ ứng dụng iPhone và iPad không?
- 6. Có thể sử dụng cùng một id ứng dụng facebook cho cả ứng dụng android và iphone không?
- 7. chuyển đổi ứng dụng ipad để chạy trên iphone (ứng dụng toàn cầu)
- 8. Chạy ứng dụng toàn cầu dưới dạng ứng dụng iPhone 'cũ' trên iPad
- 9. Làm thế nào để phân biệt iPhone và iPad trong ứng dụng toàn cầu?
- 10. Làm cho một ứng dụng iPhone cụ thể hoạt động trên iPad để đáp ứng các yêu cầu của Apple
- 11. Tôi có thể gán một phím nóng toàn cầu cho một ứng dụng Adobe AIR không?
- 12. Phát triển ứng dụng cho cả iPhone và Android
- 13. Qt dành cho iPhone/iPad?
- 14. Phát triển iOS: Làm cách nào để ngăn iPad chạy một ứng dụng toàn cầu ở chế độ iPad?
- 15. JavaFX cho iphone ipad
- 16. Cài đặt bản dựng cho ứng dụng Universal iPhone và iPad là gì
- 17. Chuyển các mục tiêu iPad/iPhone riêng biệt thành Ứng dụng toàn cầu
- 18. Bạn đặt dữ liệu ứng dụng toàn cầu vào ứng dụng iPhone ở đâu?
- 19. phonegap ipad/iphone, có một ứng dụng duy nhất trên cả hai thiết bị
- 20. lập trình một ứng dụng toàn cầu trong iOS
- 21. SDK nào có thể được sử dụng để tạo ứng dụng bản đồ ngoại tuyến cho iPad/iPhone?
- 22. ứng dụng ngoại tuyến bằng UIWebview cho iPad
- 23. Bạn có thể tắt xoay vòng trên toàn cầu trong ứng dụng iOS không?
- 24. Làm thế nào để bạn tạo một TableView tĩnh rất dài bằng cách sử dụng Storyboard?
- 25. iPhone/iPad WebApps không cho phép cookie?
- 26. Cách tạo ứng dụng Extjs hoạt động trên iPhone, iPad và Android?
- 27. Có thể chạy các ứng dụng .PK/Android trên thiết bị iPad/iPhone không?
- 28. bạn có thể làm gì với phát triển iPhone bản địa và bạn không thể sử dụng PhoneGap?
- 29. Cài đặt info.plist cho ứng dụng chỉ dành cho iPad
- 30. Thử nghiệm ứng dụng iphone trong ipad?
Tôi nghĩ, trừ khi ứng dụng rất phức tạp, bạn sẽ tốt hơn là chỉ làm cho nó trở thành bảng phân cảnh. Bằng cách đó tất cả các quá trình chuyển đổi sẽ giống nhau và mã của bạn sẽ sạch hơn rất nhiều. – nycynik
Đó là điều, ứng dụng khá phức tạp, và tôi không nghĩ rằng tôi sẽ làm điều đó một lần nữa cho iPad nếu Storyboards không có sẵn, nhưng trước khi tôi vội vã vào bất cứ điều gì tôi cần biết nếu tôi có thể làm việc đó đi. – user1790012