UISearchController funktioniert nicht ordnungsgemäß mit einer nicht durchscheinenden UINavigationBar

Zur Zeit versuche ich, einen UISearchController in meine Anwendung einzubetten. Die UISearchBar, eine Eigenschaft von UISearchController, wird jedoch nicht richtig angezeigt, wenn die UINavigationBar nicht durchsichtig ist. In der Regel wird die UINavigationBar nach dem Tippen auf die UISearchBar-Eigenschaft nach oben verschoben, um Platz für die UISearchBar zu schaffen. Das Ergebnis sehen Sie auf dem folgenden Screenshot:

https: //www.dropbox.com/s/172k63zr2bhj84t/Normal_behaviour.png? dl = 0

Aber wenn die Eigenschaft "translucent" der UINavigationBar auf "NO" gesetzt ist, wird die UISearchBar nicht richtig angezeigt, da der Hintergrund der Statusleiste transparent bleibt, wie Sie auf dem folgenden Screenshot sehen können:

https: //www.dropbox.com/s/v5cnxoj9ms6976r/Wrong_behaviour.png? dl = 0

Um dieses seltsame Verhalten zu demonstrieren, habe ich das von Apple bereitgestellte Beispielprojekt geändert:

https://developer.apple.com/library/ios/samplecode/TableSearch_UISearchController/Introduction/Intro.html

Hier können Sie die geänderte Version herunterladen:

https://www.dropbox.com/s/7icfe6kap98g1e8/TableSearchwithUISearchControllerObj-CandSwift_MODIFIED.zip?dl=0

Die Änderung befindet sich in Zeile 33 der Datei "APLMainTableViewController.m".

Antworten auf die Frage(4)

Ihre Antwort auf die Frage