Hier sind die Antworten:
Nein, es ist nicht. Aber ich würde präzisere Antwort sagen, wenn Sie bitte das Design der Zelle zeigen könnten, die den Knopf "Details anzeigen" nicht haben wird. Aber im Grunde würde ich sagen, dass die Regel lautet "Wenn der obere Teil derselbe ist, dann können Sie für beide Zellen den gleichen Entwurf verwenden". Da wirst du nur den unteren Teil der Zelle verstecken. Es wird aufgrund der geringeren Höhe der Zelle versteckt werden. ABER: unter Berücksichtigung, dass Sie es lite machen wollen, wollen Sie vielleicht keinen überflüssigen unteren Teil der Zelle haben, der nichts zu tun hat. So idealerweise ist 2 getrennte Zellen haben, aber Ihre Frage beantworten ist nicht notwendig.
Hier haben Sie 2 Fragen: Wie man den Klick + wie man erweitert. Ich werde 1 zu 1 erklären.
2.1. So prüfen Sie den Klick: Erstellen Sie einen Stellvertreter in der Zellklasse, der Ihrem View-Controller mitteilt, dass die Schaltfläche "Details anzeigen" angetippt wurde, und erweitern Sie dann die Zelle im Ansichtscontroller.
2.2. Verwenden Sie einfach heightForCellAtIndexPath
, um die Höhe der Zelle zu regulieren. Wenn es erweitert wird, mach es höher, wenn es nicht kürzer wird. Aber der Hauptpunkt hier ist, dass, wenn die Delegate-Methode aufgerufen wird, müssen Sie tableView.reloadRows(at:)
aufrufen, wo Sie die Zelle mit Animation neu laden müssen und es wird die Zelle mit einer netten Animation erweitern. Btw bevorzuge ich .fade
Animation.
- Ich denke, ich habe diese oben beantwortet, aber bitte lassen Sie mich wissen, wenn es noch nicht klar ist.
Ich hoffe, es hilft.
Mögliche Duplikate von [Erweitern Sie UILabel innerhalb von UITableView mit "mehr" -Schaltfläche wie Instagram] (https://stackoverflow.com/questions/43096231/expand-uilabel-inside-uitableview-with-more-button-like-instagram) – DonMag