Variable Höhe UITableViewCell wird nach dem Scrollen bis zum Ende der Liste und rotieren erweitert

8

AKTUALISIEREN

Ich weiß, was dieses seltsame Layout bricht. Dies ist die Einstellung eines Zubehörteils (UITableViewCellAccessory). Wenn ich die Angabe eines Zubehörs einstelle, wird das Layout nicht unterbrochen. Ich habe dies nicht als Antwort hinzugefügt, da eine Antwort eine Lösung erfordern würde, die mir ein Zubehörteil ohne Layout-Layout bietet

Die meisten Probleme, die Menschen mit benutzerdefinierten Zellen mit dynamischer Höhe haben, sind, dass sie nicht die richtige Höhe haben, bis sie gedreht werden. Allerdings sehe ich das Gegenteil: Alle Zellen haben die Höhe für ihren dynamischen Inhalt. Scrollen nach oben und unten bricht dies nicht. Wenn ich jedoch zum unteren Ende der Liste scrolle, dann drehe ich das Gerät, dann rotiere ich um eine Zeile, die zwischen dem 0,5- und 1,5-fachen der Bildschirmhöhe liegt.

Eine weitere Drehung oder ein weiterer Bildlauf bringt die Zeilen auf die erwartete Höhe zurück. Ich habe ein paar vorher und nachher Screenshots enthalten

Das UITableView ist wie folgt definiert

%Vor%

Beachten Sie, dass die üblichen Verdächtigen RowHeight und EstimatedRowHeight sind. Sobald ich die Lines = 0 von der Beschriftung entferne und die Zeilen alle gleich groß mache, verschwindet das Problem.

Irgendeine Idee, was ich noch sehen sollte?

    
Pat Long - Munkii Yebee 13.09.2016, 09:11
quelle

1 Antwort

1

Ich hatte in meinem Projekt das gleiche Problem. Ich hatte das auf folgende Weise überwunden, um die Höhe für die Reihe festzulegen.

%Vor%

Ändern Sie den Code nach Ihren Bedürfnissen. Ich habe gerade den Ziel-C-Code in swift umgewandelt.

    
Vishnuvardhan 28.09.2016 07:12
quelle