2011-02-10 8 views
13

UITableView'ımın üst kısmında, aşağı kaydırdığınızda gizler:: UZAKTANIMBAR böyle benim tablo görünümü başlığındaki:UITableView üstündeki UITableView'ın üst kısmında yer alan, ancak UINavigationBar'a yakın olan

UISearchBar *search = [[UISearchBar alloc] initWithFrame:CGRectMake(0, 0, 320, 45)]; 
self.tableView.tableHeaderView = search; 
[search release]; 

Ama sorun olduğunu sen UISearchBar UITableView üst için uyum değil, UINavigationBar üst yukarı kaydırma zaman. Daha açık olmak gerekirse Mail (iyi değil) ve Game Center'da (iyi) bir ekran yaptım.

enter image description here

Ben Oyun Merkezi'nde aynı istiyoruz. Bunu nasıl yaptığını biliyor musun?

cevap

4

Tablo görünümünü kaydırdığınızda, arama çubuğunu kendiniz gizlemeniz gerekir. Yani, UITableView başlığı olarak yazmayın. Yüksekliğini sıfır olarak ayarlayarak gizleyebilirsiniz. Böylece, tablo görünümünüz otomatik olarak oluşturulacaksa, genişler.

UITableView ve UISearchBar'ın başka bir görünümde eş olarak olmasını deneyebilirim. GameCenter görüntüsünde arama çubuğu, tablo görünümü üstbilgisi olarak değil, ayrı alt görünümler olarak bulunur.

Ayrıca UISearchDisplayController'a da bakabilirsiniz, ancak istediğiniz davranışa sahip olmadığına inanıyorum.

Düzeltme: This question temelde sizin sorunuz ve cevaplarda bazı kod var.

+0

Bu yüzden "el ile" her şeyi yapmamız gerekecek basit bir bileşen yok mu? –

+0

Birisinin ödünç alabileceğiniz bir kütüphane yaratıp yaratmadığını görmek için github veya bitbucket'te arama yapabilirsiniz. Aksi takdirde, kendi kodunuzla ilgilenmeniz gerektiğini düşünüyorum. – Walter

0

Sağ taraftaki UISearchBar başka bir UIView üzerindedir, UITableView'ın bir parçası değildir. Bu nedenle, UISearchBar'ı koymak için bir alt görünüm ekleyebilir ve başka bir alt görünüm UITableView içindir.

1

Aşağıya doğru kaydırırken bir tablo görünümü başlığı hareket edecektir. Bu tablonun mülküdür. Gezinme çubuğuna sahip bir arama Çubuğu yerleştirmek isterseniz. Neden arama çubuğunu navigasyon çubuğunun hemen altına yerleştirmiyorsunuz? Arama çubuğunu ve ayrı bir tablo görünümünü kullanın.

+0

1. Evet biliyorum ve bu kaydırma istemiyorum/2. Aşağıya doğru kaydırırken UIScrollBar'ı gizlemek istediğim için –

+1

Aşağıya doğru kaydırırken gizlemek istiyorsanız, scrollViewDidBeginScrolling öğesini kullanarak ve içinde delege kullanmayı deneyin. scrollView.contentOffset sıfırdan büyükse, temsilci, arama çubuğunu gizler. –

İlgili konular