2013-09-24 44 views

Trả lời

6

Tôi giả sử rằng bạn muốn tạo ứng dụng iOS7.

Nói chung này được thực hiện tự động khi bạn xây dựng với SDK mới.

Ví dụ: bạn đặt bạn UITableView hoặc UIScrollView với Tự động trả lời (mở rộng đến chiều cao đầy đủ của chế độ xem bộ điều khiển chế độ xem).

UIViewControllers có thuộc tính mới trong iOS 7 có tên là edgesForExtendedLayout. Giá trị mặc định ở đây là UIRectEdgeAll, có nghĩa là bộ điều khiển mở rộng nội dung của nó tới tất cả các cạnh. Nếu bộ điều khiển chế độ xem của bạn được lồng trong một số UINavigationController hoặc UITabBarController thì nó sẽ tự động đặt nội dung, vì vậy bạn có thể cuộn lên trên cùng và dưới cùng và xem tất cả các mục (hoặc ô hoặc bất kỳ mục nào). Sau đó, khi bạn cuộn nội dung ngoài màn hình, bạn có thể thấy hiệu ứng làm mờ iOS7 mới của các thanh.

Xin lưu ý rằng để định vị các phần tử giao diện người dùng khác bên dưới thanh điều hướng để chúng hiển thị và không chồng lên thanh bạn nên đọc tài liệu cho topLayoutGuidebottomLayoutGuide. Từ tài liệu:

"[...] cho biết mức độ thẳng đứng cao nhất cho nội dung bạn không muốn xuất hiện sau thanh UIKit mờ hoặc trong suốt (chẳng hạn như trạng thái hoặc thanh điều hướng). [.. .]"

TopLayoutGuide

BottomLayoutGuide

+1

nó không tự động điều chỉnh. Tôi nhìn vào Hiearchy cho VC và nó có vẻ như không có một UINav hoặc UIToolbar lồng nhau bên trong bảng VC. Có giả sử là một trong danh sách? Thanh UINavigation đến từ bộ điều khiển điều hướng. – Alan

+0

Bạn nói đúng. Nó tự động bù đắp. Tuy nhiên nếu bạn đang chuyển ứng dụng của mình từ ứng dụng trước ios7, bạn cần phải cẩn thận nếu bạn đang thực hiện bất kỳ sửa đổi nào đối với inset của tableview. Tôi đã sửa đổi inset của tableview cho Pull Down của tôi để làm mới mà inset của tableview thiết lập bằng không. Nó bây giờ cần phải tính đến chiều cao thanh điều hướng. – Alan

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