2014-11-12 13 views
6

Tôi đã đọc trên các diễn đàn về tài sản này, hầu hết mọi người đặt thuộc tính này là false hoặc bỏ chọn nó trong bảng phân cảnh. Tôi đã tự làm điều này vì khi tôi có Bộ điều khiển UINavigation được nhúng trong Chế độ xem, thanh trên cùng sẽ đẩy UITextView xuống để văn bản bắt đầu chỉnh sửa ở dưới cùng.Thuộc tính mở rộng trong UIViewController là gì?

Bỏ chọn các cạnh mở rộng bên dưới các thanh hàng đầu trong StoryBoard trong UIViewController giải quyết vấn đề của tôi nhưng tôi không hiểu điều gì đang xảy ra.

Ai đó có thể giải thích về mục đích của thuộc tính này là gì, tôi muốn biết thêm về nó.

Trả lời

5

Theo mặc định, chế độ xem của UITableViewController được tự động chèn trong iOS7 để chúng không bắt đầu bên dưới thanh điều hướng/thanh trạng thái. Đây là bộ điều khiển bằng cài đặt "Điều chỉnh chế độ xem cuộn" trong tab Thuộc tính Thanh tra của UITableViewController trong Bộ dựng giao diện hoặc bằng phương pháp setAutomaticallyAdjustsScrollViewInsets: của UIViewController.

Đối với nội dung của UIViewController, nếu bạn không muốn nội dung của chế độ xem mở rộng dưới thanh trên cùng/dưới cùng, bạn có thể sử dụng cài đặt Mở rộng thanh bên dưới thanh/dưới cùng trong Bộ dựng giao diện. Điều này có thể truy cập thông qua các tài sản edgesForExtendedLayout.

tham khảo:Why does UIViewController extend under UINavigationBar, while UITableViewController doesn't?

+0

Bạn nghĩ rằng lý do để làm điều này là để đảm bảo rằng các yếu tố giao diện người dùng không nằm trong thanh Điều hướng? – 3366784

1

Thuộc tính edgesForExtendedLayout, cùng với extendedLayoutIncludesOpaqueBars tài sản, xác định có hay không xem chế độ xem điều khiển underlap thanh trên và dưới (navigation bar, thanh công cụ, vv)

+0

Vì vậy, điều này giải thích tại sao một UITextView không hoàn toàn được đặt dưới thanh điều hướng không bắt đầu chỉnh sửa ở trên cùng? có vẻ như UITextView đã bị đẩy xuống vì nó cho rằng nó nằm dưới thanh điều hướng. – 3366784

+0

Vâng, với một cái gì đó giống như chế độ xem văn bản hoặc chế độ xem bảng, đây là chế độ xem cuộn. Vì vậy, có một biến chứng thêm. Nó có thể mở rộng dưới thanh điều hướng, nhưng sau đó nó có thể bù đắp bằng cách sử dụng nội dung inset (và cuộn chỉ báo cuộn). Vì vậy, hai thuộc tính khác đi vào chơi. Ngoài ra, nếu đây là chế độ xem cấp cao nhất, có một trình điều khiển chế độ xem khiến nội dung được đặt thành _automatically_ để bù. – matt

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