UITableView separator seltsames Verhalten

Habe ich in einem einfachen Stil Tabelle, mit mehreren Abschnitten.

Symptome: wenn die Tabelle zum ersten mal geladen wird, wird jede Zelle hat separator als normal, außer der letzten Zelle in jedem Abschnitt (also "vor" der header). Allerdings, wenn es scrollen, auf einige Zellen, die der separator erscheint. Auch, wenn eine Zelle ausgewählt ist, dann deaktiviert das Trennzeichen angezeigt wird.

Druck der view-Hierarchie zeigt, dass auf sauberen start, der separator Blick auf die Letzte Zelle in jedem Abschnitt ausgeblendet ist, so dass ich annehmen würde, dass wäre das normale Verhalten:

<_UITableViewCellSeparatorView: 0x145b1990; 
    frame = (0 47.5; 320 0.5); 
    hidden = YES; 
    layer = <CALayer: 0x145b2950>>

Zum scrollen manchmal; und indem Sie in die Zelle; diese hidden-Eigenschaft wird entfernt und so das Trennzeichen angezeigt wird.

Erste Annahme war, dass ich etwas falsch machen; aber dies geschieht mit den meisten basic-Anwendung "hello world" zu:

- (void)viewDidLoad {
    [super viewDidLoad];
    [self.tableView reloadData];
}

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
    return 4;
}

- (NSInteger)tableView:(UITableView *)tableView 
    numberOfRowsInSection:(NSInteger)section {
    return 2;
}

- (NSString *)tableView:(UITableView *)tableView 
    titleForHeaderInSection:(NSInteger)section {
    return @"test";
}

- (UITableViewCell *)tableView:(UITableView *)tableView 
    cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    NSString *reuseIdentifier = @"TestCell";
    UITableViewCell *cell = [tableView 
        dequeueReusableCellWithIdentifier:reuseIdentifier];
    return cell;
}

Bildschirme (Links: nach dem start; rechts: nach der Auswahl einer Zelle):

UITableView separator seltsames Verhalten

Ist das ein Fehler auf der Apple Seite, oder bin ich etwas fehlt? Zum Beispiel auch in die iOS-Kontakte-Anwendung der separator ist nie versteckt über einem Abschnitt header...

** * Update: **

War in der Lage reproduzieren diese in der stock Musik app: z.B. Lieder tab, keine spearator. Wählen Sie deaktivieren Sie dann die erste Zelle von jedem Abschnitt; Trennzeichen erscheint.

Extra info: iOS 7.1

  • Wie hast du das ausblenden der Separatoren?
  • Ich nicht; die Tabelle wird mit Trennzeichen versteckt in die letzten Zellen in jedem Abschnitt.
  • Hmm, ich habe sicherlich noch nicht gesehen, dieses Verhalten. Ist es möglich für Sie, um uns zu zeigen, ein Beispiel-Projekt demonstriert dies? Legen Sie es in GitHub oder Dropbox?
  • Ich habe gerade herausgefunden, dass ich es reproduzieren kann, diese in der stock Musik app. Lieder tab, I Blättern Sie zu einem Abschnitt header (z.B. Brief, E -). Kein Trennzeichen vor der Abschnittsüberschrift. Ich habe lange drücken Sie auf die erste Zelle, die in Abschnitt E lange genug, um markiert, schieben Sie dann aus, um die Auswahl aufzuheben. Separator erscheint oben in Abschnitt E. iOS 7.1
  • Ah, ich sehe, was du jetzt meinst. Es kann sein, ein Apple-bug. Versuchen Sie, melden Sie es in den radar dann.
  • Ich hatte Angst zu hören, dass... trotzdem Danke

InformationsquelleAutor Robert B. | 2014-03-23
Schreibe einen Kommentar