Add einer zusätzliche "versteckte" Zeile zu dem Abschnitt, dem Sie das Trennzeichen hinzufügen möchten, indem Sie +1
die vorhandene Anzahl der Zeilen inzurückgeben. Dann die folgende Methode hinzu:
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
if (indexPath.section == sectionOfHiddenRow && indexPath.row == indexOfHiddenRow)
return 0.f;
else
return [super tableView:tableView heightForRowAtIndexPath:indexPath];
}
Wenn Sie das Trennzeichen an der Spitze eines Abschnitts wollen (nach einem Header), werden indexOfHiddenRow
0
sein. Wenn Sie es am Ende eines Abschnitts (vor einer Fußzeile) möchten, wird es [self tableView:tableView numberOfRowsInSection:sectionOfHiddenRow] - 1
sein.
Jetzt innerhalb tableView:cellForRowAtIndexPath:
, geben Sie einfach [UITableViewCell new]
für die versteckte Zeile (es wird nicht angezeigt werden, so dass keine Notwendigkeit, einen Rahmen oder irgendetwas). Sie müssen möglicherweise einige -1
Indexanpassungen in Ihren UITableViewDataSource
und UITableViewDelegate
Methoden vornehmen, aber es funktioniert (getestet in iOS 7), und garantiert konsistente Styling (keine Notwendigkeit, Ihre eigenen "Fälschung" Separator-das ist ein echtes System- zeichnen gezeichnet UITableView
Separator).
Zum gruppierten Stil umschalten machte den Trick. –
Wie zum gruppierten Stil wechseln? – Imran
kann ich die Höhe des Separators entfernen/erhöhen? – Nil