2014-06-09 18 views
6

Benim UITableViewController, UISearchControllerDelegate ve UISearchResultsUpdating numaralarına uygundur. simülatörde bu çalıştırırkenUISearchControllerDelegate - Arama çubuğu, tablo üstbilgisinde görünmez

override func viewDidLoad() { 
    var searchController = UISearchController(searchResultsController: self) 
    searchController.searchResultsUpdater = self 
    self.tableView.tableHeaderView = searchController.searchBar 
    self.definesPresentationContext = true 
} 

Ancak kodunda belirtilen olsa bile, tablo başlığındaki herhangi bir arama çubuğu vardır:

İşte arama çubuğuna benim kurulum kodudur. Bu kodu viewWillAppear'da da denedim, ancak yine hiçbir arama çubuğu gösterilmedi.

cevap

9

Bir Apple Engineer tarafından, Arama Çubuğuna bir çerçeve vermeniz gerektiği konusunda bilgilendirildim. Arama çubuğunun çerçevesini yazdırırsanız, yüksekliğinin sıfır olduğunu görürsünüz. Yani bu muhtemelen Apple'ın kodundaki bir hatadır.

searchController.searchBar = CGRectMake(0.0, 0.0, 320.0, 44.0) 

Düzenleme:

belgeleri size sonuçlarını görüntülemek istediğiniz View Controller içinde geçmelidir belirtir. Bunu, içinde bulunduğunuz Görüntü Denetçisinde görüntülemek için, nil.

var searchController = UISearchController(searchResultsController: nil) 
+0

Teşekkür ederiz, şimdi gösteriyor. Ancak üzerine basarken hata alıyorum '2014-06-10 11: 23: 34.410 MyApp [21108: 1196461] Uyarı: Görünüm penceresi hiyerarşisinde olmayan <_TtC8MyApp22ViewController: 0x10c21cc50> üzerinde sunmaya teşebbüs ! ve ekran siyah. Herhangi bir fikir? – BytesGuy

+4

@Newbzors Düzenlemeyi kontrol edin – Vikings

+0

Bu işe yarıyor, teşekkürler! – BytesGuy

İlgili konular