6

Laut Apples „Human Interface Guidelines“ - Navigationsleisten sollten nur eine andere Taste (abgesehen von der Standard-Zurück-Taste)iOS Navigationsleiste VS UIToolbar

Das alles ist in Ordnung, aber es gibt einige Anwendungen, die auf zahlreiche Tasten haben die obere Navigationsleiste, zB die Facebook-App (Image) Meine Frage/Diskussion ergibt sich hier. . .

1) Würde Apple die Verwendung eines UIToolbar anstelle einer Navigationsleiste (mit einem benutzerdefinierten „Zurück“ Button“übernehmen, die als Ersatz für die Navigationsleiste wirken würden:

2) Ist dies, wie Facebook hätte ihre obere Leiste erreicht?

3) WENN ich eine Symbolleiste anstelle einer Navigationsleiste verwenden könnte, hätte ich oben einen kleinen Platz, wo die Symbolleiste die "Statusleiste" überlappen würde - wie sollte ich überwinden Dieses Problem? - - würde eine A UIView platzieren, in dieser Position mit einer eingebetteten Symbolleiste die richtige Lösung für dieses Problem sein?

Ihre Hilfe/Kommentare/Guides sind sehr

geschätzt
+1

Jeder, der diesem Thread folgt, kann dies auch als nützlichen Beitrag finden - http://stackoverflow.com/questions/18953509/how-to-prevent-navigation-bar-from-covering-top-of-view-in-ios -7 –

Antwort

5

Sie müssen die Navigationsleiste nicht anzeigen, sie kann ausgeblendet werden (siehe setNavigationBarHidden:animated:). Sie können stattdessen UIToolbar verwenden, aber es gibt viele Optionen zum Anpassen der Navigationsleiste.

Sie die leftBarButtonItem gesetzt, die titleView oder rightBarButtonItem eine benutzerdefinierte Ansicht sein, wie in den UINavigationController class reference angegeben. Diese Eigenschaften nehmen eine UIBarButtonItem, aber das muss kein Knopf sein. Sie können ein UIBarButtonItem mit initWithCustomView: erstellen, um ein UIBarButtonItem mit einer beliebigen UIView zu erstellen. Es kann eine UIView sein, die mehrere Schaltflächen als Untersichten oder eine Suchleiste oder ein segmentiertes Steuerelement oder beliebige Ansichten hat, solange sie passen und nicht gegen die HIG verstoßen. Sie können dies mit einer der 3 benutzerdefinierten Ansichten in der navBar tun.

3

1) Würde Apple die Verwendung eines UIToolbar anstelle einer Navigation Bar (mit einer benutzerdefinierten Schaltfläche „Zurück“,“annehmen, die als handeln würde ein Ersatz für die Navigationsleiste:

Mein Rat, wenn sie mit einem konfrontiert „sollte ich verletzen möglicherweise die Spezifikation von um daran zu arbeiten und hoffen, dass sie nichts dagegen haben,“ Entscheidung „nein“. Sind Sie bereit, die Zeit zu verbringen, um den Code zu ändern, um die Spezifikation zu erfüllen, wenn sie es nicht akzeptieren?

2) Hat Facebook seine Top-Leiste erreicht?

Ich bin mir nicht sicher, ob das beantwortbar ist.

3) Wenn ich eine Symbolleiste anstelle einer Navigationsleiste verwenden könnte, würde ich ein kleiner Raum an der Spitze, wo die Symbolleiste, um den „Status bar“ überlappen würde - wie soll ich dieses Problem überwinden? - - Würde ein A UIView, in dieser Position mit einer eingebetteten Toolbar die richtige Lösung zu dieses Problem sein?

Ich habe eine App mit einer Symbolleiste und einer Navigationsleiste erstellt. See the screen shots (Review page) here. Die Symbolleiste befindet sich oben unter der Navigationsleiste. An einer Stelle fügte ich eine Funktion hinzu, um einen Tipp auf die Navigationsleiste zu machen, um die Werkzeugleiste ein-/auszublenden. Aber da die längeren Displays herauskamen, habe ich es entfernt. Den meisten kleinen Nutzern scheint der extra kleine Hit am oberen Rand nichts auszumachen, solange das Display die Informationen liefert, die sie brauchen.

War das hilfreich?

+0

Es war wirklich, ich wünschte, ich könnte alle drei Antworten akzeptieren :) - und tolle App übrigens - Danke –

+0

Sie sind herzlich willkommen. Viel Glück! – FuzzyBunnySlippers

2

1) Wahrscheinlich. Ich habe kein Beispiel von Apple gesehen oder gehört, in dem es darum ging, eine App abzulehnen, die eine Toolbar anstelle eines Navigationscontrollers verwendete. Sie können jedoch einen Gutachter mit einem schlechten Tag bekommen, der aus diesem Grund Ihre App ablehnt. es ist wirklich unmöglich zu wissen, aber unwahrscheinlich. Ich werde sagen, dass ich eine App eingereicht habe, die Apps mit einem Navigationscontroller ähnelt, aber die obere Leiste ist benutzerdefiniert und wurde akzeptiert.

2) Die Facebook-Leiste ist höchstwahrscheinlich völlig benutzerdefiniert. Sie können sehen, dass der Transparenzeffekt nicht der Transparenz der Standardnavigationsleiste entspricht und das Layout keinem Standard-Apple-Steuerelement ähnelt.

3) Richten Sie Ihre obere Leiste (wie auch immer Sie es machen) mit dem topLayoutGuide im Interface Builder (oder im Code) aus.

Verwandte Themen