2012-02-06 55 views
15

Tôi có một câu hỏi rất hy vọng - rất đơn giản: cách vô hiệu hóa UISearchBar trong IOS5 để tránh tương tác người dùng? Tôi không thể tìm thấy setEnabled hoặc một cái gì đó như thế này ...Vô hiệu hóa UISearchBar

Cảm ơn!

Trả lời

40

Các bạn đã thử:

[searchBar setUserInteractionEnabled:NO]; 

?

+1

Câu trả lời hay, đây là Swift: 'searchBar.userInteractionEnabled = false' – kbpontius

13

Ngoài việc đặt tương tác người dùng, tôi cũng điều chỉnh giá trị alpha để làm cho giao diện độc đáo.

searchbar.alpha = .75; 
5

Hãy thử điều này

// Normal 
self.searchDisplayController.searchBar.userInteractionEnabled = YES; 
self.searchDisplayController.searchBar.translucent = YES; 
self.searchDisplayController.searchBar.searchBarStyle = UISearchBarStyleDefault; 
self.searchDisplayController.searchBar.backgroundColor = [UIColor clearColor]; 

// Faded out 
self.searchDisplayController.searchBar.userInteractionEnabled = NO; 
self.searchDisplayController.searchBar.translucent = NO; 
self.searchDisplayController.searchBar.searchBarStyle = UISearchBarStyleMinimal; 
self.searchDisplayController.searchBar.backgroundColor = [UIColor lightGrayColor]; 
+1

Tôi thấy' lightGrayColor' có vẻ hơi cực đoan; một cái gì đó nhiều hơn xung quanh '[UIColor colorWithWhite: 0,85 alpha: 1]' có vẻ đúng với tôi –

0

Đối Swift 3:

self.searchController.searchBar.isUserInteractionEnabled = true 

Hoặc nếu bạn muốn vẫn phát hiện tương tác người dùng, bạn có thể làm điều này để vô hiệu hóa các UITextField bên trong UISearchBar:

(self.searchController.searchBar.value(forKey: "searchField") as! UITextField).isEnabled = false 
Các vấn đề liên quan