Tôi có một UISearchBar trong giao diện của mình và tôi muốn tùy chỉnh hành vi của nút nhỏ rõ ràng xuất hiện trên thanh tìm kiếm sau khi một số văn bản được nhập vào (đó là một vòng tròn nhỏ màu xám có chữ thập trong đó, xuất hiện trên bên phải của trường tìm kiếm). Về cơ bản, tôi muốn nó không chỉ xóa văn bản của thanh tìm kiếm (là cài đặt mặc định) mà còn xóa một số nội dung khác khỏi giao diện của tôi, nhưng gọi một trong các phương thức của riêng tôi.Tôi có thể móc vào nút Xóa của UISearchBar không?
Tôi không thể tìm thấy bất kỳ nội dung nào trong tài liệu cho lớp UISearchBar hoặc giao thức UISearchBarDelegate - có vẻ như bạn không thể trực tiếp có quyền truy cập vào hành vi này.
Một trong những điều tôi đã làm lưu ý là các tài liệu giải thích rằng phương pháp đại biểu:
- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText;
được gọi sau khi nút rõ ràng được khai thác. Ban đầu, tôi đã viết một số mã trong phương thức đó đã kiểm tra thuộc tính văn bản của thanh tìm kiếm và nếu nó trống, thì nó đã bị xóa và làm tất cả những thứ khác của tôi.
Hai vấn đề mà mặc dù điều này:
Thứ nhất, đối với một số lý do tôi không thể hiểu được, mặc dù tôi nói với thanh tìm kiếm để resignFirstResponder ở phần cuối của phương pháp của tôi, một cái gì đó, ở đâu đó là thiết lập lại cho becomeFirstResponder. Thực sự khó chịu ...
Thứ hai, nếu người dùng không sử dụng nút rõ ràng và chỉ xóa văn bản trong thanh bằng cách sử dụng nút xóa trên bàn phím, phương pháp này được tắt và kết quả tìm kiếm của họ biến mất. Không tốt.
Mọi lời khuyên hoặc con trỏ đi đúng hướng sẽ thật tuyệt vời!
Cảm ơn!
Tôi khá chắc chắn rằng UISearchBar không vạch trần nó texfield ... – Jasarien