Benutzerdefinierte UIBarButtonItem
Ich bin versuchen, um eine benutzerdefinierte UIBarbuttonItem, die verwendet nur ein png mit Transparenz so, dass ich nur noch ein Symbol als Schaltfläche. Wenn ich versuche auf die Schaltfläche Bild, den hintergrund so weiß, und stellen Sie den Stil auf nur-ich bekomme immer noch einen inneren Schatten und schwarzen Rand um ihn herum.
Was gibt?
Habe ich versucht den folgenden code und es sich noch setzt, den schwarzen Rand um ihn herum.
UIImage *background = [UIImage imageNamed:@"Dismiss_normal.png"];
UIImage *backgroundSelected = [UIImage imageNamed:@"Dismiss_selected.png"];
self.closeButton = [UIButton buttonWithType:UIButtonTypeCustom];
[self.closeButton addTarget:self action:@selector(closeButtonPressed:) forControlEvents:UIControlEventTouchUpInside]; //adding action
[self.closeButton setBackgroundImage:background forState:UIControlStateNormal];
[self.closeButton setBackgroundImage:backgroundSelected forState:UIControlStateSelected];
self.closeButton.frame = CGRectMake(0 ,0,background.size.width, background.size.height);
self.closeButtonItem = [[UIBarButtonItem alloc] initWithCustomView:self.closeButton];
self.navigationItem.leftBarButtonItem = self.closeButtonItem;
Was mir aufgefallen ist wenn ich einen modal-segue den button, mit dem code oben noch einen schwarzen Rand um ihn herum, aber wenn ich einen push-segue nicht? WTF???
InformationsquelleAutor jdog | 2013-06-07
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich Verstand Ihr problem.
Wenn Sie tatsächlich schieben Sie einen
UIViewController
es wird ein Teil der bestehendenUINavigationController
. Also dieUINavigationBar
behält. Aber wenn SieModalViewController
es ist nur ein weitererUIViewController
Art "Hinzugefügt", um Ihre bestehendenUIViewController
. Also dieUINavigationBar
werde nicht da sein.Aber Sie können weitere hinzufügen
UINavigationBar
ausxib
und fügen Sie eineUIButton
. Aber nicht direkt fügen Sie denUIButton
wenn Sie dies tun, wird es automatisch zu konvertierenUIBarButton
macht es grenzt.So ziehen Sie zunächst einen normalen
UIButton
zu IhremUIView
(nicht navigation). Ändern Sie auf Benutzerdefiniert und fügen SieUIImage
mitAttribute Inspector
. Ziehen Sie das Bild auf Ihre eigene erstelltUINavigationBar
. Es funktioniert, als ich versuchte es gerade jetzt. Sehen Sie den Screenshot unten angehängt.Müssen Sie den Typ Schaltfläche aus, um Benutzerdefinierte und das icon-Bild auf die Schaltfläche hintergrund.
Beispiel-code:
Dann setzen Sie diese Taste, um Ihre BarButtonItem wie diese:
Dies wird aktualisieren Sie ALLE zurück-buttons und Navigationsleisten in der gesamten app.
Ich habe den Folgenden code, um eine Benutzerdefinierte Navigation mit zurück-Schaltfläche
und den Folgenden code für die Einstellung hintergrund Bild auf der Navigationsleiste aus.
Versuchen, verwenden Sie [UIBarButtonItem initWithCustomView]
Ich persönlich mag FlatUIKit ist Ansatz, indem Sie nur glätten die gesamte Benutzeroberfläche durch UIAppearance
Im wesentlichen, Sie würden etwas tun wie:
Versuchen, diesen code..