UITableViewWrapperView
ist nicht in iOS11 vorhanden, wenn ich meine App mit Xcode9 erstelle.
Ich stelle eine Hintergrundansicht für meine UITableView
ein, indem ich insertSubview
methode von UIView
benutze, dieser Code funktioniert mit allen iOS-Versionen, wenn ich meinen Code mit Xcode8 kompiliert habe, aber wenn ich den gleichen Code mit Xcode9 und dann Inhalt bilde ist unsichtbar (auf iOS 11), weil die Hintergrundebene über Zellen kommt.
Unten sind Debug-Ergebnisse -
Xcode9 und iOS 11 -
A. Vor dem Hinzufügen von Hintergrund
%Vor%
B. Nach dem Hinzufügen von Hintergrund
%Vor%
Xcode8 und iOS 11 - UITableViewWrapperView ist vorhanden -
A. Vor dem Hinzufügen von Hintergrund
%Vor%
B. Nach dem Hinzufügen von Hintergrund
%Vor%
Methode zum Festlegen des Hintergrunds -
%Vor%Erstellen Sie mit Xcode8 unter iOS11
Erstellen Sie mit Xcode9 unter iOS11
Ich habe diesen Link gefunden, der bestätigt, dass UITableViewWrapperView
von iOS11 entfernt wurde, aber nur, wenn wir kompilieren Code mit Xcode9?
Deshalb verwende ich nicht undokumentierte Funktionen. Apple-Jungs ändern sie wie sie wollen ohne Benachrichtigungen. Mein Vorschlag für Ihren Fall ist, Tabellenansicht auf ein rotes Substrat in IB zu setzen und Ihren Code anzuwenden.
NB. Vergessen Sie nicht, die Eigenschaft clipsToBounds
auf true
zu setzen.
Die Funktion wird noch kürzer:
%Vor%Sie können Beispielprojekt hier finden: Ссылка
Überprüfen Sie Ihre Zielerstellungseinstellungen. Sie bauen möglicherweise auf das neueste Betriebssystem auf, und beim Wechsel von XCode 8 auf 9 wurde das Kompilierungs-Zielbetriebssystem von 10 auf 11 verschoben. Dies kann auch eine Unterscheidung zwischen Debug- und Release-Builds sein. Sie können Ihr Ziel in XCode 9 zu iOS 10 ändern und es wird mit den behobenen Problemen neu kompilieren, aber Sie riskieren in Zukunft Deprecation-Probleme.
Versuchen Sie einfach, myCustomTableView.insertSubview(backgroundView, at: 0)
durch
myCustomTableView.backgroundView = Hintergrundansicht
Es funktioniert gut für mich.
bro Ich denke, dass diese Codezeile für Sie nützlich sein kann.
alter Code:
%Vor%Durch folgenden Code ersetzen:
%Vor%Tags und Links objective-c uitableview ios swift