Как изменить цвет кнопки выбранного бара? - PullRequest
3 голосов
/ 29 июля 2011

У меня есть простая черная панель навигации со следующей кнопкой

enter image description here

При нажатии кнопки она приобретает тот же цвет, что и панель навигации, с тем же градиентом. Но я хочу, чтобы это выглядело так:

enter image description here

Так что это простой черный цвет фона. Любая идея, как добиться этого с помощью конструктора интерфейса? Или это требует программного способа?

Ответы [ 3 ]

2 голосов
/ 08 августа 2011

Это просто, сначала нужно это сделать.Перейти к вашему конструктору интерфейса.Выполните следующие действия -

  1. Выберите элемент UIButton.Откройте правую боковую панель, которая дает атрибуты о кнопке.Выберите Type вашей кнопки как Custom.
  2. Теперь посмотрите на state config.Различные состояния для кнопки - по умолчанию, выделено, выбрано, отключено.Определите различные изображения, как вы хотите в image.В основном выберите изображения так, чтобы желаемый эффект был удовлетворен.
  3. Теперь это автоматически обрабатывает изменение внешнего вида элемента кнопки в зависимости от состояния кнопки.
  4. Но иногда вам бы хотелосьизменить состояние вручную, через код.Это можно сделать так - [yourButton setSelected:BOOL] или [yourButton setHighlighted:BOOL] или [yourButton setEnabled:BOOL]

Надеюсь, это поможет ...

Обновление: Посмотреть скриншот- Этот снимок показывает, что есть определенные состояния, «по умолчанию», «выделены» ... это определяет состояния.Вы можете определить изображения для каждого из этих состояний.Опять же, надеюсь, это поможет ...

enter image description here

2 голосов
/ 01 августа 2011

Да, это требует некоторого программирования ... но если вы хотите сделать это с помощью IB, то вы можете использовать один грязный способ ... Вы можете использовать изображения для всех этих элементов управления .. (Да, именно поэтому это грязно), если у вас есть PSDиз вашего дизайна, то вы можете нарезать каждый элемент.Как вы можете нарезать фон панели инструментов (черная полоса) и можете разместить его как изображение в определенном месте.затем вы можете добавить на нее кнопку и установить ее изображение (для обычного и выделенного состояния)

Я постараюсь сделать это путем кодирования, и если я найду способ, я опубликую это здесь ..

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

Единственный поддерживаемый способ управления внешним видом, помимо указания текста или изображения в оттенках серого и значения UIBarButtonItemStyle для UIBarButtonItem в iOS 4, состоит в том, чтобы создать его как представление (вероятно, подкласс UIButton) и обернуть его просмотр в UIBarButtonItem с использованием initWithCustomView:.

Или вы можете полностью пропустить UIToolbar и просто поместить UIButton s на UIImageView для достижения желаемого визуального эффекта.

...