2014-06-27 11 views
5

Ich habe für den folgenden Code unter Verwendung von tableviewUITableView unerwünschte weiße Linie auf jede Zeile Separator

_comboBoxTableView = [[UITableView alloc] initWithFrame:CGRectMake(1, _selectContentLabel.frame.origin.y+_selectContentLabel.frame.size.height-1, frame.size.width+1, 48) style:UITableViewStylePlain]; 
_comboBoxTableView.layer.borderColor=[UIColor colorWithRed:226.0/255.0 green:226.0/255.0 blue:226.0/255.0 alpha:1].CGColor; 
_comboBoxTableView.layer.cornerRadius = 10; 
_comboBoxTableView.layer.borderWidth = 1.0f; 
_comboBoxTableView.separatorColor = [UIColor colorWithRed:166.0/255.0 green:166.0/255.0 blue:166.0/255.0 alpha:1]; 
[_comboBoxTableView setSeparatorStyle:UITableViewCellSeparatorStyleSingleLine]; 

enter image description here Es ist eine unerwünschte weiße Farbe auf der linken Seite jeden Separator, wie unten gezeigt.

Ist es ein Fehler? Ich betreibe es mit ios7.1. Irgendwelche Arbeiten herum?

Antwort

1

Es ist kein Fehler. Ab iOS 7 können Tabellenansichten die Einfügungen ihrer Trennzeichen anpassen. Wenn Sie einen Rand zu Rand Separator wollen, beseitigen die Einlässe:

if ([_comboBoxTableView respondsToSelector:@selector(separatorInset)]) { // In case running iOS < 7 
    _comboBoxTableView.separatorInset = UIEdgeInsetsZero; 
} 

Mehr Informationen im UITableView documentation.

+1

+1 gespeichert meine Zeit !! –

0

Nur für den Fall, dass Sie keine Zeit haben, dies programmatisch zu beheben, können Sie subview die while-Zeile patchen.

enter image description here

weiß ich, dass dies nicht die richtig Lösung, aber funktioniert.

+0

Diese Antwort ist Borderline down-fähig –

0

Was für mich funktionierte: Im Interface Builder hat die Tabellenansicht eine Funktion namens Separator Inset. Es ist normalerweise auf Standard (das scheint 15 zu sein).

Sie können es zu Custom wechseln und die 15 durch 0 ersetzen. Keine seltsamen Linien mehr.

enter image description here

enter image description here

Verwandte Themen