iPhone: настройка свойства ширины кнопки navigationItem - PullRequest
0 голосов
/ 06 февраля 2012

Я пытался обойти настройку свойства ширины кнопки navigitem, но не смог найти способ сделать то, что я ищу.

Следующий код работает нормально, устанавливая размер кнопки, какой я хочу, и выгляжу красиво, но на самом деле я не вижу кнопку, это скорее только мое изображение. Это должно появиться как кнопка, и у этого есть фоновое изображение!

UIButton *addCommentButton = [UIButton buttonWithType:UIButtonTypeCustom];
[addCommentButton setFrame:CGRectMake(0, 0, 25, 25)];
[addCommentButton addTarget:self action:@selector(addComment) forControlEvents:UIControlEventTouchUpInside];
[addCommentButton setBackgroundImage:[UIImage imageNamed:@"myImage.png"] forState:UIControlStateNormal];
self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:addCommentButton];

Следующий код делает это, но я не могу установить размер кнопки (25,25) !!

self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"myImage.png"] style:UIBarButtonItemStyleBordered target:self action:@selector(addComment)];

Я пытался установить ширину явно, но это не имеет значения!

[[self.navigationItem rightBarButtonItem] setWidth] = 25;

Может кто-нибудь, пожалуйста, помогите мне разобраться в этом вопросе. Спасибо.

Ответы [ 2 ]

0 голосов
/ 06 февраля 2012

Ваш первый фрагмент кода генерирует пользовательскую кнопку, которая не будет выглядеть как кнопка. Второй фрагмент кода дает UIBarButtonItem с ограниченным стилем UIBarButtonItem (не UIButton). Используя первый фрагмент кода, просто создайте UIButton с кнопкой типа RoundedRect вместо Custom.

0 голосов
/ 06 февраля 2012

У меня нет быстрого объяснения, чтобы решить вашу проблему, но я думаю, что код, указанный в следующей ссылке, поможет вам решить ее.*

...