Saturday, 18 November 2017

Edgesforextendedlayout Navigationsleiste In Css


Meine App scheint ordnungsgemäß ausgelegt werden, aber ich kann nicht erreichen, die verschwommene lichtdurchlässige Wirkung, die iOS 7 berühmt ist. Mine erscheint opak. Gewünschte Wirkung Im Versuch, einen offensichtlichen Unschärfeeffekt wie Apples Trailers app zu erhalten: Translucency In meiner Unterklasse von UINavigationController mache ich die Navigationsleiste transluzent: Tint Color In meiner Unterklasse von UIApplicationDelegate stelle ich die Tönungsfarbe der Navigationsleiste ein. Ich entdeckte, dass das Alpha der Farbtonfarbe keinen Unterschied macht. Das heißt, die Verwendung eines Alphas von 0,1 würde nicht dazu führen, dass der Balken lichtdurchlässiger wird. In meinem Content-View-Controller, setze ich die Kante zu UIRectEdgeNone, so dass die Top nicht von der Navigationsleiste abgehackt wird. Wenn ich den Standard UIRectEdgeAll verwenden würde. Würde die Navigationsleiste dauerhaft die Oberseite meines Inhalts bedecken. Selbst wenn ich mit dieser Anomalie leben würde, ermöglicht UIRectEdgeAll den Transluzenz-Effekt immer noch nicht. Edit: Experimenting mit Edges Ad von rmaddy in den Kommentaren darauf hingewiesen, kann das Problem mit dem KantenForExtendedLayout. Ich habe eine umfangreiche Tutorial EdgesForExtendedLayout und versuchte, es zu implementieren: Es hat nicht funktioniert. Erstens gab es keine Transparenzwirkung. Zweitens wurde die Spitze meiner Inhalte abgehackt. Auf der folgenden Beispielseite mit dem obigen Code wurde der Avatar zunächst von der Navigationsleiste abgedeckt und es war sehr schwer zu scrollen. Sie könnten nach unten ziehen, um die Spitze des Avatar zu sehen, aber wenn Sie loslassen, würde die Seite automatisch wieder zurück und der Avatar würde wieder verdeckt werden. Fragte Nov 14 13 um 1:19 Uhr rmaddy. Der Screenshot kam auf iPhone 5 mit iOS 7.0.3 mit dem System quotreduce Animationquot Einstellung ausgeschaltet. Mit der Standardeinstellung UIRectEdgeAll wird der obere und untere Teil der Inhaltsansicht unter den Navigations - und Tabulatoren stecken, wie ich aus diesem Thread gelernt habe. I39ve versucht die Standard-UIRectEdgeAll und es macht keinen Unterschied in den Spezialeffekten. Ndash Pwner Nov 14 13 at 1:51 Das Problem wurde durch die Drop-Down-to-Refresh-Ansicht EGORefreshTableHeaderView verursacht. Die populär verwendet wurde, bevor iOS 6 die System-Refresh-Steuerung eingeführt. Diese Ansicht verwirrt iOS 7, so dass es denke, dass der Inhalt ist größer als es wirklich ist. Für iOS 6 und 7, Ive bedingt wechselte zu UIRefreshControl. Nun wird die Navigationsleiste nicht abschneiden meine Inhalte. Ich kann UIRectEdgeAll verwenden, um meinen Inhalt unter die Navigationsleiste zu bewegen. Schließlich färbe ich meine Navigationsleiste mit einem niedrigeren Alpha, um den Transluzenz-Effekt zu erhalten. Antwort # 1 am: November 15, 2010, 12:10:31 am »Es ist ein Problem, dass iOS-Entwickler geplagt hat, da die ziemlich transparente Navigationsleisten kam in iOS 7, etwas, wenn ich fragen, warum es geschieht, haben sie Absolut keine Ahnung. Es gibt eine einfache Verlegenheit, die jeder benutzt hat, aber it39s ein Hack und viele Entwickler haben es gerade benutzt, ohne das Problem zu verstehen. Setzen Sie das in Ihren Controller und plötzlich funktioniert es einfach. irgendwie. Nun hat die Navigationsleiste keinen Sinn, transparent zu sein, was den Zweck besiegt. Die Ansichten, die dahinter sein sollten, unsere Wurzelansicht und it39s Hintergrundfarbe, aren39t, das durch mehr zeigt. Ehrlich gesagt, können Sie nicht interessieren, könnte dies genug für Sie, aber es ist wichtig, dass Sie immer noch das Problem verstehen, so lesen Sie weiter. Wenn you39ve getan Web-Entwicklung, das ist sorta wie Überlauf: in CSS versteckt. Hat den Job, aber es ist immer noch Art von einem Quothackquot. So ist das Problem, dass, wenn Sie39re view39s Rahmen gesetzt ist, im Gegensatz zu iOS 6, der Rahmen noch den Bereich unterhalb der Navigationsleiste umfasst. Was Sie vielleicht nicht realisiert haben, ist, wenn ein UIScrollView. Oder eine Unterklasse wie UITableView. Ist die Wurzelansicht für Ihren Controller, es wird it39s contentInset - Eigenschaftssatz korrekt haben, so dass der Rahmen unter der Navigationsleiste sein kann, aber der eigentliche Ursprung, den er mit der Zeichnung beginnt, befindet sich stattdessen am unteren Rand der Navigationsleiste. Dies bedeutet, dass wir das Problem der Überlappung der Navigationsleiste sehr einfach beheben können, indem wir unsere root-Ansicht stattdessen mit einer UIScrollView (oder Unterklasse von) versehen, während wir trotzdem unsere Hintergrundfarbe durchscheinen lassen. Sie können Ihre Root-Ansicht ein UIScrollView erstellen, indem Sie die loadView-Methode definieren, in der Ihre root-Ansicht und it39s-Unterberichte erstellt werden sollen, wenn Sie Ihre Ansichten programmgesteuert erstellen. Wenn Sie dies ausprobieren, erhalten Sie diese. Beachten Sie das rote Leuchten durch die Navigationsleiste Beachten Sie, dass wir setzen, dass blaue view39s Herkunft die obere linke Ecke sein Alles ist gut sitzen und arbeiten, wie Apple erwartet, dass wir die transparenten Navigationsleisten verwenden. Dies hat den zusätzlichen Vorteil, dass uns ein einfacher Weg, um unser Layout über den Bildschirm zu jetzt, dass wir39re mit einer Scroll-Ansicht zu erweitern, aber Sie können dies nicht jedenfalls, sondern können Sie es einfach als Ersatz für UIView, die it39s haben können ContentInset-Set. Ich haven39t schaute in die Gedächtnisunterschiede für dieses, aber meine Erwartung ist, dass es extrem minimal sein würde. Wenn Sie mehr über RubyMotion erfahren möchten, schauen Sie sich meine Screencasts bei motioninmotion. tv/ oder meinem kommenden Buch RubyMotion for Rails Developers an. Die für Pre-Order jetzt verfügbar ist, unter einem Pay What You Want Preismodell, mit Teil 1 fast fertig und wird bald veröffentlicht werden. RubyMotion Adventures - Die MotionInMotion BlogiOS 7: UITableView zeigt unter Statusleiste Der erste Bildschirm meiner Anwendung ist ein UITableViewController ohne Navigationsleiste, was bedeutet, dass der Inhalt unter der Statusleiste fließt, so dass es viele Textkollisionen gibt. Ive justiert die Eigenschaften für unter Spitzenstäbe und Anpassung scroll Ansichteinsätze, die es wirklich stoppen, vom Scrollen unter, aber auf Kosten des Haltens der Oberseite der Tabellenansicht unter. Ive versucht, die UITableView Rahmen um 20 Pixel versetzt, aber es scheint nicht wirksam zu setzen. In Ihrem viewDidLoad fügen Sie diese Zeilen: iOS 7: UITableView zeigt unter Statusleiste Bewertet von Ricardo Castellanos am 11:48 Bewertung: 5

No comments:

Post a Comment