2010-12-27 9 views
1

Gibt es eine Möglichkeit, den Überlauf in einem UITableViewCell zu verstecken? Ich habe eine benutzerdefinierte Zellenansicht, die ich in die Tabelle lade, wo einige der Informationen beim Laden verborgen werden sollen, und dann wird jede Zeile beim Klicken erweitert.iphone uitablecellview Überlauf

Im Moment gebe ich Höhe 30 für meine Zeile zurück, die die Höhe des Zellenheaders ist, aber die Schaltflächen und der Text, die versteckt werden sollen, überlaufen einfach und werden oben auf den Kopfzeilen platziert.

Screenshot

Antwort

2

Während Sie Clip-Unteransichten (cell.contentView.clipsToBounds = YES) verwenden können, ist es wahrscheinlich am besten, wenn Sie die Unteransichten hinzufügen, wenn Sie die Teilansichten erweitern und entfernen möchten, in denen die Zelle kollabiert. Es sollte die Leistung erhöhen.

+0

Die spezifische für Clipping zu verwenden wäre 'cell.contentView.clipsToBounds = YES'. – mrueg

0

Es gibt eine Eigenschaft auf UIView "Clips Subviews?".

Wenn Sie diesen Wert für die Zellen auf TRUE setzen, sollte dies das Überlaufen der Schaltflächen verhindern. Sie können dies entweder in IB oder programmgesteuert (etwas anderer Name im Code) tun.

JEDOCH ... kann das NICHT sein, was Sie wollen. Kommt auf den Effekt an. Als ich das letzte Mal gemacht habe, was du machst, habe ich Clipsubviews verwendet.

Normalerweise ist die UIView-Eigenschaft "versteckt" (oder die andere - "aktiviert") die richtige Weise, um Ihre Schaltflächen usw. zu verbergen.

Das könnte jedoch mit Ihren Animationen verwechselt werden - hängt davon ab, wie Sie den Click-to-expand animieren.