Gruplanmış stili kullanan tablo görünümlerinin tasarımı iOS 7 ile önemli ölçüde değiştiğinden, ilk bölüm başlığını gizlemek (veya kaldırmak) istiyorum. Şimdiye kadar bunu başaramadım.
Biraz basitleştirilmiş, kodum şöyle görünüyor:
- (CGFloat) tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section
{
if (section == 0)
return 0.0f;
return 32.0f;
}
- (UIView*) tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
if (section == 0) {
UIView* view = [[UIView alloc] initWithFrame: CGRectMake(0.0f, 0.0f, 640.0f, 0.0f)];
return view;
}
return nil;
}
- (NSString*) tableView:(UITableView *) tableView titleForHeaderInSection:(NSInteger)section
{
if (section == 0) {
return nil;
} else {
// return some string here ...
}
}
Yüksekliği 0 döndürürsem, diğer iki yöntem hiçbir zaman bölüm dizini 0 ile çağrılmaz. Yine de boş bir bölüm başlığı varsayılan yükseklik ile çizilir. (İOS 6'da iki yöntem çağrılır. Ancak görünen sonuç aynıdır.)
Farklı bir değer döndürürsem, bölüm başlığı belirtilen yüksekliği alır.
0.01 döndürürsem, neredeyse doğrudur. Ancak, simülatörde "Yanlış Hizalanmış Görüntüler" i açtığımda, tüm tablo görünümü hücrelerini işaretliyor (bu mantıksal bir sonuç gibi görünüyor).
UITableView: üstbilgiyi boş bölümden gizle sorusunun yanıtları , bazı kişilerin bölüm başlığını gizlemede başarılı olduğunu gösteriyor gibi görünüyor. Ancak düz stile de uygulanabilir (gruplanmış olanın yerine).
Şimdiye kadarki en iyi uzlaşma, yüksekliği 0,5'e döndürmek ve bunun sonucunda gezinme çubuğunun altında biraz daha kalın bir çizgi oluşması. Ancak, birisi ilk bölüm başlığının nasıl tamamen gizlenebileceğini bilirse memnun olurum.
Güncelleme
Göre caglar'ait 'nin analizi ( https://stackoverflow.com/a/19056823/413337 Tablo görünümü, bir navigasyon kontrol içerdiği takdirde), sorun yalnızca ortaya çıkar.
section == 0
.