Как добавить изображение в UIBarButtonItem? - PullRequest
4 голосов
/ 17 июля 2011

Я создал пользовательскую кнопку и применил ее к элементу UIbarbuttonitem.Нет ошибки, но ничего не отображается на панели навигации :( Это мой код -

    //create a custom button
    UIImage *image = [UIImage imageNamed:@"TESTButton.png"];
    UIButton *myCustomButton = [UIButton buttonWithType:UIButtonTypeCustom];
    myCustomButton.bounds = CGRectMake( 0, 0, image.size.width, image.size.height );    
    [myCustomButton setImage:image forState:UIControlStateNormal];
    [myCustomButton addTarget:nil action:@selector(goBack:) forControlEvents:UIControlEventTouchUpInside];


    UIBarButtonItem *button = [[UIBarButtonItem alloc] initWithCustomView:myCustomButton];
    self.navigationItem.leftBarButtonItem = button;
    self.navigationController.navigationBar.barStyle = UIBarStyleDefault;

    [button release];
    [myCustomButton release];
    [image release];
    [navID release];

Кто-нибудь, кто может исправить мой код?

Ответы [ 3 ]

9 голосов
/ 17 июля 2011

С документы:

initWithImage:style:target:action:

Попробуйте это.

1 голос
/ 14 октября 2017

Один из самых простых способов:

UIBarButtonItem *button2 = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"backk.png"] style:UIBarButtonItemStylePlain target:self action:@selector(backBtn:)];
self.navigationItem.leftBarButtonItem = button2;

Метод действия:

- (IBAction)backBtn:(id)sender
{
    [self.navigationController popViewControllerAnimated:YES];
}
1 голос
/ 17 июля 2013

Чтобы установить ЛЮБОЕ изображение с правильной окраской, используйте UIButton, установите «изображение для состояния», а затем создайте UIBarButtonItem с customView

UIImage *btnImage = [UIImage imageNamed:@"button"];
UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom];
btn.bounds = CGRectMake( 0, 0, btnImage.size.width, btnImage.size.height );
[btn addTarget:self action:@selector(action:) forControlEvents:UIControlEventTouchDown];
[btn setImage:btnImage forState:UIControlStateNormal];
_buttonItem = [[UIBarButtonItem alloc] initWithCustomView:btn];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...