UITableView scrollt nicht nach unten

7

Ich habe ein UITableView (auf einem UIViewController), auf dem ich oben ein iAd-Banner anzeigen möchte, aber unterhalb einer ToolBar, die ich bereits oben habe. Ich versuche, die TableView (in Bezug auf die Ansicht) zu verschieben, damit ich das Banner in dem leeren Feld finden kann.

Um es zu überprüfen, erstelle ich eine Aktion, in der ich den TableView-Frame verschiebe:

%Vor%

wobei 94 die Summe von 44 aus der Symbolleiste und die 50 aus dem Banner ist.

Die Aktion funktioniert zwar korrekt, aber ich kann nicht zum Ende der Tabelle blättern, wenn ich es versuche, springt sie zurück. Ich habe versucht, die Höhe der TableView in der gleichen Aktion (430 statt 367, zum Beispiel) zu ändern, aber es funktioniert nicht. Ich habe es auch auf IB versucht, aber es funktioniert auch nicht.

Ich fühle, dass ich etwas verpasse, aber ich kann mich nicht erinnern, was.

Irgendwelche Hilfe?

Vielen Dank im Voraus!

    
Marcal 27.11.2011, 19:08
quelle

4 Antworten

17

Wenn Sie nicht bis zum Ende der Tabellenansicht scrollen können, ist das normalerweise ein Symptom, dass die Höhe zu groß ist. (d. h. es ist unten abgeschnitten)

Berechnen Sie nicht die benötigte Höhe und fügen Sie diese Zahlen in Ihren Code ein. Finden Sie einfach heraus, was es aus der Sichthierarchie sein sollte. Sie könnten beispielsweise die Höhe Ihrer Tabellenansicht mit CGRectGetHeight(self.view.bounds) - CGRectGetMaxY(self.iAdView) und den y-Ursprung der Ansicht mit CGRectGetMaxY(self.iAdView) berechnen, vorausgesetzt, dass die iAd-Ansicht und Ihre Tabellensicht beide Unteransichten von self.view sind. Oder, noch besser, verwenden Sie einfach Autoresize-Masken oder automatische Layouts, um die Tabellenansicht in der richtigen Größe zu halten.

    
Jesse Rusak 27.11.2011, 19:15
quelle
10

Sie können versuchen

self.tableView.contentInset = UIEdgeInsetsMake(0, 0, 44, 0);

    
vishnu 15.12.2014 13:59
quelle
2

Ich hatte gerade dieses peinliche Szenario, bei dem mein UITableView "hüpfen" würde, aber nicht nach unten scrollen würde. Für ME bestand das Problem darin, dass ich die Zeilenhöhen dynamisch einstellte und meine allerletzte Zelle mit einer Zellenhöhe von -115 (ja, negativ) berechnet wurde. Sobald ich das behoben habe, um eine positive Zahl zurückzugeben, funktionierte mein Scrolling gut.

    
ghostatron 14.03.2013 18:52
quelle
2

Sogar wir können dasselbe im Storyboard erreichen.

Wählen Sie tableView - & gt; Klicken Sie im Storyboard-Steuerelement auf "Fehlende Abhängigkeiten hinzufügen". Dadurch wird die Einschränkung für TableView und View hinzugefügt.

Das hat mir geholfen, dieses Problem zu lösen. Screenshot_Link

    
umakanta 28.07.2014 09:20
quelle

Tags und Links