Đối với bất kỳ ai quan tâm đến việc nhân rộng này, chỉ cần làm theo các bước sau:
- Tạo một dự án iOS mới
- Mở bảng phân cảnh chính và xóa mặc định / ban đầu
UIViewController
- Kéo ra một cái mới
UITableViewController
từ Thư viện đối tượng
- Đặt nó làm trình điều khiển xem ban đầu
- Cung cấp cho bảng một số dữ liệu thử nghiệm
Nếu bạn làm theo các bước trên, khi bạn chạy ứng dụng, bạn sẽ thấy không có gì, kể cả điều chỉnh các hộp kiểm của Xcode thành "Mở rộng Edges Under {Top, bottom, Opaque} Bars" để ngăn hàng đầu tiên xuất hiện dưới thanh trạng thái, Bạn cũng không thể giải quyết vấn đề này theo chương trình.
Ví dụ: Trong kịch bản trên, những điều sau đây sẽ không có hiệu lực:
// These do not work
self.edgesForExtendedLayout=UIRectEdgeNone;
self.extendedLayoutIncludesOpaqueBars=NO;
self.automaticallyAdjustsScrollViewInsets=NO;
Vấn đề này có thể rất bực bội và tôi tin rằng đó là một lỗi ở phần cuối của Apple, đặc biệt là vì nó xuất hiện trong chính tiền điện tử UITableViewController
của họ từ thư viện đối tượng.
Tôi không đồng ý với tất cả những người đang cố gắng giải quyết vấn đề này bằng cách sử dụng bất kỳ hình thức "Số ma thuật" nào, ví dụ: "sử dụng đồng bằng 20px". Kiểu lập trình kết hợp chặt chẽ này chắc chắn không phải là điều Apple muốn chúng ta làm ở đây.
Tôi đã phát hiện ra hai giải pháp cho vấn đề này:
Giữ nguyên UITableViewController
cảnh của :
Nếu bạn muốn giữ UITableViewController
bảng phân cảnh, mà không đặt thủ công vào chế độ xem khác, bạn có thể nhúng UITableViewController
vào UINavigationController
(Trình chỉnh sửa> Nhúng vào> Trình điều khiển Điều hướng) và bỏ chọn "Hiển thị Thanh điều hướng" trong trình kiểm tra . Điều này giải quyết vấn đề mà không cần chỉnh sửa thêm, và nó cũng giữ nguyên UITableViewController
cảnh của bạn trong bảng phân cảnh.
Sử dụng AutoLayout và nhúng UITableView
vào chế độ xem khác (tôi tin rằng đây là cách Apple muốn chúng tôi làm điều này) :
Tạo một sản phẩm trống UIViewController
và kéo bạn UITableView
vào đó. Sau đó, Ctrl-kéo từ của bạn UITableView
về phía thanh trạng thái. Khi chuột ở dưới cùng của thanh trạng thái, bạn sẽ thấy bong bóng Tự động xóa có nội dung "Hướng dẫn bố cục hàng đầu". Nhả chuột và chọn "Khoảng cách dọc". Điều đó sẽ cho hệ thống bố trí đặt nó ngay bên dưới thanh trạng thái.
Tôi đã thử cả hai cách trên một ứng dụng trống và cả hai đều hoạt động. Bạn có thể cần phải thực hiện một số điều chỉnh bổ sung để làm cho chúng hoạt động cho dự án của bạn.