Das Problem ist mit Bildern ziemlich einfach zu verstehen. Ich habe einen UINavigationController, mit dem der Benutzer zwischen Ansichten wechseln kann.
Die erste Ansicht enthält eine Suchleiste und eine Tabellenansicht wie folgt:
Die zweite ist eine grundlegende Ansicht, in der Informationen über die Zelle angezeigt werden
Wenn ich auf die Suchleiste klicke, wird der Navigationscontroller ausgeblendet und die Suchleiste ist jetzt oben.
Wenn ich nun auf eine Zelle klicke, wird die zweite Ansicht angezeigt, aber die Navigationsleiste wird zuerst wie folgt ausgeblendet:
Und dann erscheint es automatisch so:
Ich habe ein paar Dinge ausprobiert, wie zum Beispiel die Navigationsleiste, bevor ich den nächsten View-Controller drücke, aber es ist ziemlich hässlich. Weiß jemand wie man die Navigationsleiste direkt auf der zweiten Ansicht anzeigt (wie in der Kontaktanwendung)?
[UPDATE]: Code
AppDelegate.m (ich spreche von navigationcontroller2)
%Vor%FirstView.m
%Vor%Wenn Sie noch etwas brauchen, fragen Sie einfach, aber ich denke, es ist alles da.
Versuchen Sie, diesen Code in jedem Viewcontroller zu verwenden.
%Vor%Ich hatte ein ähnliches Problem mit der Position meiner Navigationsleiste. Meins bewegte sich hinter der Statusleiste, und ich behob das Problem, indem ich den Navigationsrahmen manuell einstellte:
%Vor%Ich musste diese Methode an einer Reihe von Stellen aufrufen, einschließlich viewWillAppear: und didRotateFromInterfaceOrientation :, aber es funktionierte gut:)
Das Ausblenden der UINavigationBar kann die Eigenschaften manchmal stören. Verwenden Sie die Eigenschaft alpha
anstelle von hidden
.
Tags und Links objective-c ios uinavigationcontroller