Tôi đang cố gắng để quấn đầu của tôi xung quanh bộ điều khiển trong Cocoa Touch. Vấn đề chính là tôi muốn có nhiều hơn một bộ điều khiển "trên màn hình" cùng một lúc - tôi muốn có một cái nhìn lớn (với bộ điều khiển A) bao gồm các khung nhìn nhỏ hơn được điều khiển bởi bộ điều khiển riêng của họ (nói B). Tôi muốn có nó theo cách này bởi vì bộ phận làm cho mã trở nên sạch hơn. Điều gì là xấu là các bộ điều khiển bổ sung (loại B) không phải là "công dân hạng nhất" trên màn hình, ví dụ như họ không nhận được các truy vấn và thông báo autorotation. (Và không thể dễ dàng hiển thị bộ điều khiển phương thức, họ phải gửi thông báo presentModal…
tới bộ điều khiển chính của họ.)Nhiều bộ điều khiển chế độ xem trên màn hình cùng một lúc?
Sự khác nhau giữa bộ điều khiển A và B từ quan điểm Cocoa là gì? Liệu hệ thống có giữ một số loại con trỏ tới "bộ điều khiển phía trước", một hệ thống đặc quyền mà nó gửi thông báo và những thứ như vậy không? Tại sao các bộ điều khiển khác không nhận được chúng, mặc dù lượt xem của chúng trên màn hình? Có nhiều bộ điều khiển “trên màn hình” được coi là hack không? Hoặc là nó được hỗ trợ và tôi chỉ thiếu một số điểm? Cảm ơn bạn.
Tìm hiểu thêm về sự cố Tôi đang cố giải quyết: Tôi đang viết một trình duyệt ảnh đơn giản. Ảnh được hiển thị ở chế độ toàn màn hình, người dùng có thể vuốt sang trái hoặc phải để thay đổi ảnh. Bộ điều khiển A sẽ xử lý phần cuộn và bộ điều khiển B sẽ tự chăm sóc từng ảnh.
Cách ly B có vẻ là một ý tưởng hay vì ảnh được tải từ mạng và có rất nhiều điều có thể xảy ra, giống như mạng có thể không hoạt động. Trong bộ điều khiển B, mã này khá đơn giản, vì B chỉ hoạt động với một ảnh cụ thể. Nếu tôi chuyển mã vào bộ điều khiển A, mọi thứ sẽ trở nên lộn xộn.
Điều duy nhất tôi không thích về giải pháp hiện tại là tôi phải tự làm việc xung quanh B không phải là bộ điều khiển “hạng nhất”. Tôi phải vượt qua một số cuộc gọi bằng tay thông qua A đến B và khi B muốn hiển thị một hộp thoại phương thức, nó phải gửi presentModal…
đến A. Đó là xấu xí.
Tốt câu trả lời, cảm ơn bạn.Tôi biết rằng lượt xem xuất hiện trên màn hình chứ không phải bộ điều khiển, đó là lý do tôi tiếp tục viết “trên màn hình” trong dấu ngoặc kép, có nghĩa là “có chế độ xem trên màn hình”. Tôi sẽ viết thêm về tình huống trong câu hỏi. – zoul