2012-01-06 21 views
5

Tôi có nghi ngờ trong việc sử dụng 2 XIb cho một lớp học thay đổi về định hướng cho Ipad.Is nó thực hành đúng để làm. Đối với Ipad ở chế độ Portrait, tôi có một thiết kế và cho chế độ phong cảnh tôi có thiết kế khác nhau (tương tự như potrait, nhưng không thể chỉnh sửa trong potrait) .Tôi có thể làm mọi thứ trong lập trình hoặc sử dụng 2 Xib, phức tạp không hoặc các vấn đề tôi phải đối mặt trong việc sử dụng 2 Xib?Khác nhau của Xib cho chế độ Potrait và Landscape cho iPad

Trả lời

2

Bạn có thể sử dụng cùng một XIB, nhưng có hai chế độ xem khác nhau, một cho chân dung và một cho cảnh quan. Trong "didRotateFromInterfaceOrientation:", chuyển chế độ xem tùy thuộc vào hướng. Kiểm tra liên kết sau như thế nào nó có thể được thực hiện:

http://www.theappcodeblog.com/2011/03/30/orientation-change-tutorial-change-the-view-when-the-orientation-changes/

+0

Về mặt logic Không thể thực hiện được. Nếu bạn muốn làm điều này thì bạn cần phải duy trì hai đối tượng cho mỗi bộ điều khiển trong XIB cho protrait và cảnh quan ... –

+0

??? tại sao nó không thể? nó được thực hiện trong nhiều ứng dụng. Chỉ cần đi qua liên kết được cung cấp. Chúng tôi sẽ chỉ có hai đối tượng UIVIEW, một bộ điều khiển XIB và một bộ điều khiển duy nhất. –

+0

Tôi đã nói rằng bạn cần hai đối tượng cho mỗi bộ điều khiển trong XIB và cũng trong mẫu của bạn cung cấp trong liên kết ở trên đang làm điều tương tự như tôi nói. Bây giờ chỉ cần nghĩ nếu điều khiển có nhiều nút và bộ điều khiển khác. Đó là lý do tại sao tôi nói logic rằng nó không tốt để tích hợp theo cách này. –

8

Nếu bạn đang yêu cầu nếu sử dụng hai ngòi cho định hướng của bạn là tiêu chuẩn thực hiện thì câu trả lời là không.

Nếu giao diện người dùng của bạn cho ngang và dọc là hoàn toàn khác nhau thì đó sẽ là một cách tiếp cận có thể chấp nhận được hơn. Nhưng bạn có thể dễ dàng chỉ sử dụng một NIB đơn với hai khung nhìn bên trong nó (thay vào đó là một khung cảnh cho ảnh ngang).

Mẫu thiết kế được chấp nhận mà Apple đưa ra là bộ điều khiển chế độ xem của bạn quản lý cả định hướng ngang và dọc và điều chỉnh chế độ xem (sử dụng mặt nạ tự động hóa và cũng hooking vào các phương thức ủy nhiệm khác nhau được kích hoạt khi xoay để thêm/xóa/animate lượt xem) hoặc thay thế chế độ xem bằng một cái gì đó khác.

Nếu chế độ xem ngang/dọc của bạn khá khác nhau, tôi khuyên bạn nên có một NIB đơn với hai chế độ xem bên trong nó (một cho cảnh quan, một cho chân dung) và thêm/xóa hai chế độ xem đó trong bộ điều khiển chế độ xem của bạn .

'Thực hành tiêu chuẩn' luôn khó xác định, và có lẽ một số người sẽ không đồng ý với tôi, nhưng tôi chắc chắn chưa thấy bất kỳ ứng dụng nào sử dụng hai NIB cho định hướng ngang/dọc và tôi chưa thấy bất kỳ mã mẫu Apple nào thực hiện nó. Hi vọng điêu nay co ich!

3

Điều đó phụ thuộc vào sự phức tạp của việc thực hiện lập trình. Nếu bạn cần thay thế nút, bạn nên thay đổi khung theo lập trình. Nếu thiết kế khác nhau ở chế độ dọc và ngang, thì bạn nên sử dụng 2 tệp xib.

Sử dụng 2 xib, khó chuyển thông tin từ xib này sang xib khác. Ví dụ. Nếu xib có trường văn bản, bạn nên sao chép văn bản trong đó và đặt vào xib thứ hai và v.v.

+0

Cảm ơn tất cả mọi người vì những gợi ý tuyệt vời của họ !! Tốt của nó bằng cách sử dụng 2 lượt xem trong một ngòi, đi với cách tiếp cận này – gopal

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