So ist mein Problem relativ einfach.
iOS11: UITableView Abstand zwischen Inhalt und Tastatur
Ich habe eine Test-App mit nur 1 Bildschirm erstellt.
Dieser Bildschirm ist ein UINavigationController
mit einem UITableViewController
als Root-View-Controller. Die Tabellenansicht hat 30 Zellen, die eine UITextField
als Unteransicht hinzugefügt haben. Die UINavigationController
zeigt auch die Symbolleiste, um das Problem besser zu veranschaulichen.
Jetzt zu meinem Problem. Ich startete diese App auf dem iPhone X-Simulator und scrollte nach unten. Dann tippte ich eine UITextField
, um den Text zu bearbeiten, einen Text eingegeben und wieder nach unten gescrollt. Und jetzt ist da das Problem. Die volle Tastaturhöhe wird als unterer Inhalt eingefügt, und wie Sie wissen, gibt es seit iOS11 die neue safeArea
, aus der jetzt das contentInset hinzugefügt wird. Und wie Sie sich jetzt schon vorstellen können, ist das contentInset zu groß, weil die Tastaturhöhe auch von der Bildschirmkante aus berechnet wird und nicht die safeArea
Kante. Zum besseren Verständnis des Problems schauen Sie sich den beigefügten Screenshot an.
Wie Sie sehen können, endet die Bildlaufleiste und der Inhalt viel zu früh! Dieser große Abstand zwischen dem Inhalt der Tabellenansicht und der Tastatur sollte nicht da sein! Je größer die safeArea
auf der Unterseite, desto größer wird der Abstand.
aber was möchten Sie lösen? Ist dieser zusätzliche Raum Ihr Problem? – prabodhprakash
oh, ja das ist das Problem, ich werde das zur Beschreibung hinzufügen –