2011-02-12 16 views
11

Tôi bắt đầu với việc học về Chế độ xem bảng. Ứng dụng của tôi sử dụng một Tab Bar Controller và tất cả các tab là các khung nhìn đơn giản. Tôi muốn thêm một tab khác và trong tab này, tôi đang cố gắng triển khai bảng điều khiển điều hướng kiểu Bảng. Từ những gì tôi đọc những quan điểm cần một điều khiển UINavigation như điều khiển xem gốc tuy nhiên điều khiển thanh tab của tôi đã được thiết lập một bộ điều khiển xem gốc của tôi, vì vậy tôi kinda nhầm lẫn.Thực hiện Chế độ xem bảng trong Bộ điều khiển thanh tab?

Ai đó có thể giải thích những gì tôi nên làm để thực hiện điều gì đó như thế này.

Trả lời

17

Đây là câu hỏi hay và hầu hết các nhà phát triển mới ở Cocoa luôn tranh đấu cùng. Bạn cần phải suy nghĩ về kiến ​​trúc của ứng dụng của bạn để xem điều gì sẽ có ý nghĩa nhất với yêu cầu của bạn, nhưng trong hầu hết trường hợp, bạn sẽ muốn TabBarController trở thành bộ điều khiển chính/gốc phục vụ các khung nhìn khác, và sau đó từ đó cấu hình các khung nhìn tabItem dựa trên dữ liệu bạn cần hiển thị.

Đối với trường hợp cụ thể của bạn, khi bạn đang tạo mục tab mới, thay vì phân phối UIViewController cho tab đóMục xem, bạn muốn sử dụng bộ điều khiển điều hướng. Sau đó, dưới bộ điều khiển điều hướng, bạn sẽ có thể gán bộ điều khiển xem gốc của nó, mà phải là một thể hiện của UITableViewController (hoặc UIViewController với một cá thể UITableView nếu bạn cần nhiều hơn một UITableView trong dạng xem của bạn).

Vì vậy, hệ thống phân cấp đi một chút như thế này

1 - TabBarController

1.1 ----- NavigationController

1.1.1 ------- UITableViewController

1.1.1 ------- Các chế độ xem khác trên ngăn điều khiển nav của bạn

1.2 ----- Bất kỳ chế độ xem nào khác trên tabBarController

Và đây là một video hướng dẫn tốt sẽ giúp bạn với nó: http://www.youtube.com/watch?v=LBnPfAtswgw

Chúc may mắn, Rog

+0

Liên kết tuyệt vời bro !!! Đó là chính xác những gì tôi cần tôi vừa xem xong và tôi có bộ xương của những gì tôi muốn. Tôi chỉ cần chăm sóc các chi tiết. Cảm ơn bạn rất nhiều! – cgossain

1

Trước hết xem bảng không cần thiết phải được nhúng trong các bộ điều khiển chuyển hướng. Hầu hết thời gian, nhưng đây không phải là một yêu cầu.

Để thêm một cái nhìn bảng bạn sẽ tạo ra một UITableViewController (hoặc một generic UIViewController với một UITableView nhúng trong nó, điều này phụ thuộc vào nhu cầu của bạn) và đặt nó trong bất động sản UITabBarControllerviewControllers của bạn. Ví dụ:

UIViewController *vc1 = [[FirstViewController alloc] init]; 
UIViewController *vc2 = [[SecondsViewController alloc] init]; 
UITableViewController *tableVC = [[UITableViewController alloc] init]; 
tabBarController.viewControllers = [NSArray arrayWithObjects:vc1, vc2, tableVC, nil]; 

Tất nhiên, trên bộ điều khiển xem nên là lớp con cụ thể để bạn có thể triển khai chế độ xem và logic tùy chỉnh của mình.