Saturday, February 11, 2017

Edgesforextendedlayout Navigation Bar Farben

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 Subklasse 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. Gespeichert Nov 14 13 at 1:19 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. Beantwortet Nov 15 13 an 0: 16CSS Navigationsleiste Mit einfach zu bedienende Navigation ist wichtig für jede Website. Mit CSS können Sie langweilige HTML-Menüs in gut aussehende Navigationsleisten umwandeln. Navigationsleiste Linkliste Eine Navigationsleiste benötigt Standard-HTML als Basis. In unseren Beispielen erstellen wir die Navigationsleiste aus einer Standard-HTML-Liste. Eine Navigationsleiste ist im Grunde eine Liste von Links, so dass die ltulgt und ltligt Elementen macht durchaus Sinn: ltulgt ltligtlta hrefquotdefault. aspquotgtHomeltagtltligt ltligtlta hrefquotnews. aspquotgtNewsltagtltligt ltligtlta hrefquotcontact. aspquotgtContactltagtltligt ltligtlta hrefquotabout. aspquotgtAboutltagtltligt ltulgt Jetzt können die Kugeln zu entfernen und die Ränder und Polsterung aus Die Liste: ul list-style-type: none margin: 0 padding: 0 list-style-type: none - Entfernt die Aufzählungszeichen. Eine Navigationsleiste benötigt keine Listenmarkierungen. Einstellrand: 0 und Auffüllen: 0, um Browser-Standardeinstellungen zu entfernen Der Code im obigen Beispiel ist der Standardcode, der sowohl in vertikalen als auch horizontalen Navigationsleisten verwendet wird. Vertikale Navigationsleiste Um eine vertikale Navigationsleiste zu erstellen, können Sie zusätzlich zu dem obigen Code die ltagt-Elemente in die Liste einfügen: li a display: Blockbreite: 60px display: Block - Die Links als Blockelemente anzeigen bildet den gesamten Linkbereich (Nicht nur den Text), und es erlaubt uns, die Breite (und Polsterung, Rand, Höhe, etc., wenn Sie wollen) Breite: 60px - Block-Elemente nehmen die volle Breite zur Verfügung stehen standardmäßig. Wir möchten eine Breite von 60 Pixeln angeben. Sie können auch die Breite von ltulgt festlegen und die Breite von ltagt entfernen, da sie die volle Breite zur Verfügung stellen, wenn sie als Blockelemente angezeigt werden. Dies ergibt das gleiche Ergebnis wie im vorherigen Beispiel: ul list-style-type: none margin: 0 padding: 0 width: 60px li a display: block Vertical Navigationsleiste Beispiele Erstellen Sie eine einfache vertikale Navigationsleiste mit grauer Hintergrundfarbe und ändern Sie sie Die Hintergrundfarbe der Links, wenn der Benutzer die Maus über sie bewegt: ul list-style-type: none margin: 0 padding: 0 width: 200px Hintergrundfarbe: f1f1f1 li a display: Blockfarbe: 000 padding: 8px 16px text - decoration: keine Ändern der Linkfarbe auf hover li a: hover Hintergrundfarbe: 555 Farbe: weiß ActiveCurrent Navigation Link Fügen Sie dem aktuellen Link eine aktive Klasse hinzu, damit der Benutzer wissen kann, welche Seite heshe aktiviert ist: aktive Hintergrundfarbe: 4CAF50 Farbe: weiß Center Links amp Rand hinzufügen Text-align: center to ltligt oder ltagt, um die Links zu zentrieren. Fügen Sie die border - Eigenschaft hinzu, um ltulgt einen Rahmen um die Navigationsleiste hinzuzufügen. Wenn Sie auch innerhalb der Navigationsleiste Grenzen wünschen, fügen Sie allen ltligt-Elementen einen Rand-Boden hinzu, mit Ausnahme des letzten: ul border: 1px solid 555 li text-align: center border-bottom: 1px solid 555 li: last-child border - bottom: keine Full-height Fixed Vertical Navbar Erstellen Sie eine volle Höhe, quotstickyquot Seitennavigation: ul list-style-type: keine Margin: 0 padding: 0 Breite: 25 Hintergrundfarbe: f1f1f1 Höhe: 100 Full Höhenposition: fixiert Machen Sie es Stick, auch auf Scroll-Überlauf: auto Aktivieren Sie das Scrollen, wenn die sidenav zu viel Inhalt hat Hinweis: Dieses Beispiel funktioniert möglicherweise nicht ordnungsgemäß auf mobilen Geräten. Horizontale Navigationsleiste Es gibt zwei Möglichkeiten, eine horizontale Navigationsleiste zu erstellen. Verwenden von Inline - oder Floating-Listeneinträgen. Inline-Listenelemente Eine Möglichkeit, eine horizontale Navigationsleiste zu erstellen, besteht darin, die ltligt-Elemente wie inline zusätzlich zum oben stehenden quotStandardcode anzugeben: li display: inline display: inline - Standardmäßig sind ltligt-Elemente Blockelemente. Hier entfernen wir die Zeilenumbrüche vor und nach jedem Listenelement, um sie in einer Zeile anzuzeigen. Floating List Items Eine weitere Möglichkeit, eine horizontale Navigationsleiste zu erstellen, besteht darin, die ltligt-Elemente zu schweben und ein Layout für die Navigationslinks anzugeben: Block-Padding: 8px Hintergrundfarbe: dddddd float: left - Float verwenden, um nebeneinanderliegende Block-Elemente zu erhalten. Display: block - Die Links als Block-Elemente anzeigen lassen den gesamten Linkbereich (nicht nur den Text) anklicken 8px - Da Blockelemente die gesamte verfügbare Breite einnehmen, können sie nicht nebeneinander schweben. Geben Sie daher ein paar Polsterungen an, um sie gut aussehen zu lassen. Hintergrundfarbe: dddddd - Fügen Sie jeder Elementfarbe eine graue Hintergrundfarbe hinzu Tipp: Hinzufügen der Hintergrundfarbe zu ltulgt anstelle jedes ltagt-Elements, wenn Sie eine Hintergrundfarbe mit voller Breite wünschen: Ul Hintergrundfarbe: dddddd Horizontale Navigationsleiste Beispiele Erstellen Sie eine grundlegende horizontale Navigationsleiste mit einer dunklen Hintergrundfarbe und ändern Sie die Hintergrundfarbe der Links, wenn der Benutzer die Maus über sie bewegt: ul list-style-type: none margin: 0 padding : 0 Überlauf: versteckt Hintergrundfarbe: 333 li a Display: Blockfarbe: weiß Text-align: Mittelpolsterung: 14px 16px Textdekoration: keine Ändern Sie die Linkfarbe zu 111 (schwarz) auf hover li a: hover Hintergrundfarbe : 111 ActiveCurrent Navigations Link Fügen Sie der aktuellen Verknüpfung eine aktive Klasse hinzu, damit der Benutzer weiß, welche Seite eingeschaltet ist: active background-color: 4CAF50 Rechtsbündige Links Rechtsbündige Links, indem Sie die Listenelemente nach rechts schwimmen lassen (float: right ): ltulgt ltligtlta hrefquothomequotgtHomeltagtltligt ltligtlta hrefquotnewsquotgtNewsltagtltligt ltligtlta hrefquotcontactquotgtContactltagtltligt LTLI stylequotfloat: rightquotgtlta classquotactivequot hrefquotaboutquotgtAboutltagtltligt ltulgt Border Divider die border-right-Eigenschaft In den ltligt Link Teiler zu schaffen: einen grauen rechten Rand auf alle Listenelemente, mit Ausnahme der letzten Artikel (last-child hinzufügen) Li border-right: 1px solid bbb li: last-child border-right: keine Feste Navigationsleiste Machen Sie die Navigationsleiste am oberen oder unteren Rand der Seite, auch wenn der Benutzer die Seite scrollt:


No comments:

Post a Comment