2010-01-14 32 views

Trả lời

5

Một giải pháp có thể là thêm chế độ xem tùy chỉnh vào bảngHeaderView. Đây là những gì tôi đã làm:

tìm kiếmBar là một UISearchBar tôi đã khai báo trong tệp tiêu đề. Tôi tạo ra một UIView và thêm một UINavigationBar cho toàn bộ chiều rộng và thêm UISearchBar ngắn trên đầu trang của nó. Sau đó, cuối cùng tôi đã gán UIView cho tableHeaderView.

searchBar = [[UISearchBar alloc] initWithFrame:CGRectMake(0.0, 0.0, 290.0, 44.0)]; 

UIView *customTableHeaderView = [[UIView alloc] initWithFrame:CGRectMake(0.0, 0.0, 320.0, 44.0)]; 
UINavigationBar *dummyNavigationBar = [[UINavigationBar alloc] initWithFrame:CGRectMake(0.0, 0.0, 320.0, 44.0)]; 
[customTableHeaderView addSubview:dummyNavigationBar]; 
[customTableHeaderView addSubview:searchBar]; 
[dummyNavigationBar release]; 

self.tableView.tableHeaderView = customTableHeaderView; 
[customTableHeaderView release]; 

Một giải pháp thanh lịch hơn có thể là kéo dài UISearchBar bằng cách sử dụng thuộc tính contentStretch. Tôi vẫn phải thử và kiểm tra xem nó có hoạt động không.

+0

Đặt ** contentStretch ** không hoạt động đối với tôi. – Sney

+0

@Snej hmm .. thì đây là giải pháp duy nhất tôi biết .. cảm ơn vì đã cho tôi biết :) – srik

+0

Hoạt động trong bảng phân cảnh. –

0

Nếu bạn sử dụng UISearchDisplayController, hành vi mong muốn sẽ hoạt động tự động như được ghi chú trong this answer.

1

Bạn có nghĩa là A-Z của các chữ cái chỉ mục ở phía bên phải của màn hình tràn vào thanh tìm kiếm, như được thấy trong ảnh chụp màn hình này, 'A' và 'B' xuất hiện ở cạnh phải của thanh tìm kiếm không?

enter image description here

(a) Tôi không thể tìm thấy bất cứ cách nào để tránh vấn đề bảng chữ cái-tràn ngập này. Cách tiếp cận được liên kết bởi câu trả lời của Scott McCammon ở đây bị cấm bởi Apple (và thậm chí sau đó tôi không chắc nó giải quyết vấn đề này).

(b) Tôi thấy hành vi này trong ứng dụng của Apple trong iOS 6.0.1 trên iPod touch (thế hệ thứ 4).

(c) Tôi cho rằng về mặt logic, đây không phải là một tính năng không phải là lỗi, vì thanh tìm kiếm nằm trong tiêu đề của chế độ xem bảng. Tiêu đề là một phần của chế độ xem bảng và cuộn như một phần của chế độ xem bảng, vì vậy có lẽ điều đó có ý nghĩa đối với bảng chữ cái chỉ mục được vẽ như trong phần còn lại của chế độ xem bảng.

Sự cố này sẽ trở thành vấn đề lớn hơn khi bạn có các nút phạm vi. Không có khoảng trống nào được đặt ở bên phải cho các nút phạm vi để bảng chỉ mục vẽ ngay trên đầu nút ngoài cùng bên phải.

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