Chciałbym utworzyć pasek nawigacyjny z obrazami jako przyciskami po prawej stronie paska nawigacyjnego.iOS: Pasek nawigacyjny ze zdjęciami dla przycisków
Coś poniżej Snapshot
W jaki sposób można to osiągnąć?
Chciałbym utworzyć pasek nawigacyjny z obrazami jako przyciskami po prawej stronie paska nawigacyjnego.iOS: Pasek nawigacyjny ze zdjęciami dla przycisków
Coś poniżej Snapshot
W jaki sposób można to osiągnąć?
Hope this helps
viewController.navigationItem.titleView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"yourimage.png"]];
UIBarButtonItem * item = [[UIBarButtonItem alloc] initWithCustomView:[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"yourimage2.jpg"]]];
viewController.navigationItem.rightBarButtonItem = item;
UIView *viewWithButtons = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 100, 44)];
//view customization
UIButton *leftButton = [UIButton buttonWithType:UIButtonTypeCustom];
//Button customiztaion
[viewWithButtons addSubview:leftButton];
UIButton *rightButton = [UIButton buttonWithType:UIButtonTypeCustom];
//Button customiztaion
[viewWithButtons addSubview:rightButton];
self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:viewWithButtons];
[viewWithButtons release];
Tutaj kod, zadzwoń poniżej metody z viewDidLoad
metody
- (void)addCustomButtonOnNavBar
{
UIBarButtonItem * item1= [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"passImageNmae1"] style:UIBarButtonItemStylePlain target:self action:@selector(yourButtonAction1)];
UIBarButtonItem * item2= [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"passImageNmae2"] style:UIBarButtonItemStylePlain target:self action:@selector(yourButtonAction2)];
NSArray * buttonArray =[NSArray arrayWithObjects:item1,item2 ,nil];
self.navigationItem.rightBarButtonItems =buttonArray;
}
To nie działa. Próbuje umieścić obraz na przycisku. Chcę, aby obraz był samym przyciskiem. –
Innymi słowy nie udało mi się uzyskać ekranu, który opublikowałem przy użyciu tego kodu. –
@Karamshad Button jest bardzo duży. Jak ustawić odpowiedni rozmiar pasujący do paska nawigacji? –
używam kategorię dla tego:
UIBarButtonItem + WithImageOnly. h:
#import <UIKit/UIKit.h>
@interface UIBarButtonItem (WithImageOnly)
- (id)initWithImageOnly:(UIImage*)image target:(id)target action:(SEL)action;
@end
UIBarButtonItem + WithImageOnly.m:
#import "UIBarButtonItem+WithImageOnly.h"
@implementation UIBarButtonItem (WithImageOnly)
- (id)initWithImageOnly:(UIImage *)image target:(id)target action:(SEL)action {
CGRect frame = CGRectMake(0, 0, image.size.width, image.size.height);
frame = CGRectInset(frame, -5, 0);
UIButton *button = [[UIButton alloc] initWithFrame:frame];
[button setImage:image forState:UIControlStateNormal];
[button addTarget:target action:action forControlEvents:UIControlEventTouchUpInside];
return [self initWithCustomView:button];
}
@end
Zastosowanie:
UIBarButtonItem *button = [[UIBarButtonItem alloc] initWithImageOnly:[UIImage imageNamed:@"image"] target:self action:@selector(someAction:)]
myślę, że to jest to, czego szukam. Jak mogę obsługiwać dotknięcia tego przycisku? –
Nice !! Próbowałem tej i poniższej odpowiedzi Kamarshada, ale ta odpowiedź jest o wiele lepsza, ponieważ ikona przycisku wygląda ładnie z "initWithCustomView" – swiftBoy