iPhone: как уменьшить ширину UIBarButtonItemWidth?

Я создал UIBarButtonItem, а затем установил для элемента self.navigationItem.rightBarButtonItem.

Однако установка свойства ширины barButtonItem, похоже, не влияет на ширину кнопки (я пытаюсь уменьшить ширину barButton)

Если я использую пользовательское представление для UIBarButtonItem, я могу установить ширину представления (и это, в свою очередь, устанавливает ширину barButton)

Однако я хочу получить внешний вид стандартного UIBarButtonItem.

Кто-нибудь знает, как уменьшить ширину UIBarButtonItem без использования пользовательского представления? (в качестве альтернативы, кто-нибудь знает, как создать UIView или UIButton, который выглядит как UIBarButtonItem)


person Community    schedule 17.06.2009    source источник
comment
Они, вероятно, не упростили это, потому что они не хотят, чтобы вы это делали. Cocoa-Touch в значительной степени заставляет все приложения иметь одинаковый внешний вид и другие вещи, например, ширину UIBarButtonItem.   -  person mk12    schedule 30.10.2009


Ответы (1)


Похоже, Apple действительно этого не хочет (Руководство по человеческому интерфейсу). Однако есть несколько статическое решение, если вы используете для него собственное представление:

Вместо этого просто используйте изображения... используйте захват, чтобы скопировать изображения из IB с нужной вам шириной. Тогда они будут выглядеть точно так же, как UIBarButtons.

Apple показывает, как сопоставить два разных изображения (а в этом примере и функции) с одной и той же кнопкой в ​​зависимости от состояния... посмотрите пример кода «Добавить музыку»: http://developer.apple.com/iphone/library/samplecode/AddMusic/index.html

Это от TechGuru @ http://discussions.apple.com/thread.jspa?messageID=9822548

person Gerd    schedule 08.12.2009