UIButton als UINavigationbar-Taste
Ich habe eine Tab bar application. und in einem der Reiter bars ich habe ein Navigations-contorller.
Im, der versucht, einen UIButton mit einem Bild als die Rechte Schaltfläche der Navigationsleiste.
UIButton *refreshButton = [[UIButton alloc] init];
[refreshButton setImage:[UIImage imageNamed:@"refresh_icon.png"] forState:UIControlStateNormal];
[refreshButton addTarget:self action:@selector(refreshSection) forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem *rightButton = [[UIBarButtonItem alloc] initWithCustomView:refreshButton];
//[rightButton setImage:[UIImage imageNamed:@"refresh_icon.png"]]; << DOESN'T WORK EITHER
self.navigationItem.rightBarButtonItem = rightButton;
[refreshButton release];
[rightButton release];
aber das Bild wird nicht angezeigt. Bekomme ich eine unsichtbare Schaltfläche.
EDIT:
Ich möchte die Schaltfläche Stil, einfach oder hintergrund transparent, so dass nur das Bild zeigt. Also ich bin mit einem UIbutton statt mit einem UIBarButton direkt.
InformationsquelleAutor Rupert | 2010-09-30
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sie nicht haben, um eine
UIButton
und verwenden Sie es als benutzerdefinierte Ansicht in derUIBarButtonItem
. Sie können erstellen Sie eineUIBarButtonItem
direkt mit einem Bild:--
Aktualisiert, laut Kommentare
Verwenden
UIImageView
als benutzerdefinierte Ansicht in derUIBarButtonItem
:--
Aktualisiert
Versucht das Letzte Ansatz, und dies wirkt sich zwar optisch so Aussehen, wie Sie es wollen, und ich kann nicht scheinen, um es zu behandeln Armaturen. Obwohl das Ziel und die Aktion eingestellt wurde.
--
Letzten update
Ich habe deinen anfänglichen code, der in die Frage & running. Der Grund, das Bild nicht zeigt, ist, weil Sie nicht den Rahmen der Schaltfläche. Sobald Sie das Bild festlegen, wird das Bild angezeigt in der navigation.
Hier ist mein Schnipsel, die ich verwendet & getestet:
Hinweis: ich habe den
showsTouchWhenHighlighted
Eigenschaft desUIButton
visuell hightlight Sie die Taste, wenn Sie gedrückt wird.Ich endete damit, diesen
Es funktioniert jetzt, aber ich bin nicht wirklich sicher, ob dies der richtige Weg, es zu tun.
UIBarButtonItem
.