Tôi có UISearchBar và UISearchDisplayController, mọi thứ hoạt động tốt nhưng bộ chọn phạm vi của tôi hiển thị bên cạnh trường văn bản thay vì bên dưới trường đó. Tôi biết rằng đây là hành động dự kiến khi thiết bị đang ở phong cảnh, nhưng kể từ khi tôi có UISearchBar trong giao diện tổng thể của một UISplitViewController nó kết thúc lên tim như thế này:Thanh phạm vi lực bên dưới UISearchBar
Có cách nào để buộc thanh phạm vi hiển thị bên dưới trường văn bản trong tất cả các định hướng giao diện (Tôi biết rằng tính năng này hoạt động tốt trong Mail.app trên iPad, vì vậy có thể, nhưng ai biết nếu Apple quyết định ẩn tùy chọn để làm như vậy)
Tôi đã tìm được cách để thực hiện, nhưng đó không phải là API công khai. [self.searchDisplayController.searchBar setCombinesLandscapeBars: NO]; Hãy chắc chắn gọi nó trên thanh tìm kiếm của SearchDisplayController chứ không phải chính UISearchBar. Rõ ràng bộ điều khiển hiển thị tìm kiếm đang quản lý thuộc tính này. – axiixc
Tôi đang gặp vấn đề tương tự và setCombinesLandscapeBars: KHÔNG thực sự giải quyết vấn đề, nhưng cũng mẫu của Apple "TableSearch" được kết quả tương tự mà không sử dụng phương pháp đó. Bạn đã tìm thấy một giải pháp khác? – nacho4d
Trong trường hợp bạn không bị từ chối, bạn có thể sử dụng mã này, không có cảnh báo và an toàn trong trường hợp các kỹ sư của Apple quyết định rằng phương thức cá nhân sẽ không còn nữa. nếu ([self.searchDisplayController.searchBar respondsToSelector: @selector (setCombinesLandscapeBars :)]) { objc_msgSend (self.searchDisplayController.searchBar, @selector (setCombinesLandscapeBars :), NO);} – nacho4d