Как изменить размер кнопки панели навигации - PullRequest
0 голосов
/ 02 августа 2011

На панели навигации много сообщений, но мне нужно изменить их размер.

Значит, в моем приложении оно увеличивается с каждым просмотром. Но я хочу сохранить его меньшим по размеру со всеми видами.

Как мне изменить его размер и, если возможно, поставить изображение.

1 Ответ

1 голос
/ 02 августа 2011

Чтобы изменить размер кнопки навигационной панели - или настроить ее любым способом - вам нужно создать пользовательский UIBarButtonItem для добавления на навигационную панель.

Следующий фрагмент кода создаст настроенный UIBarButtonItem, который содержит настраиваемую кнопку с обычными и выделенными изображениями и имеет размер, соответствующий размеру изображения:

UIButton *customButton = nil;
UIImage  *buttonImage = nil;
UIImage  *pressedButtonImage = nil;

buttonImage = [UIImage imageNamed:@"button_image"];
pressedButtonImage = [UIImage imageNamed:@"button_pressed_image"];
customButton = [UIButton buttonWithType:UIButtonTypeCustom];
[customButton setImage : buttonImage forState : UIControlStateNormal];
[customButton setImage : pressedButtonImage forState : UIControlStateHighlighted];
[customButton addTarget : self action : @selector(buttonTapped) forControlEvents : UIControlEventTouchUpInside];
customButton.frame = CGRectMake(0, 0, buttonImage.size.width, buttonImage.size.height);

UIView *container = [[UIView alloc] initWithFrame:(CGRect){0.0, 0.0, buttonImage.size.width, buttonImage.size.height}];
container.backgroundColor = [UIColor clearColor];
[container addSubview:customButton];

UIBarButtonItem *customToolbarButton = [[UIBarButtonItem alloc] initWithCustomView:container];

// add the custom button to the toolbar
self.navigationBar.topItem.rightBarButtonItem = self.addButtonItem;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...