UISegmentedControl с номером значка - PullRequest
5 голосов
/ 02 ноября 2010

Так же, как и на вкладке, я хочу показать значок на UISegmentedControl. Как я не могу увидеть какие-либо предопределенные методы для UISegmentedControl так же, как доступны для UITabBar.

alt text

Я думал о добавлении значка в виде изображения поверх него, но, возможно, есть какой-то лучший способ.

Ответы [ 3 ]

11 голосов
/ 02 ноября 2010

Здесь - это небольшая сторонняя библиотека, которую я использовал для рисования значков на разных вещах. Это довольно мило. Например, изменение цвета значка в соответствии с моим дизайном было тривиальным.

Как только вы добавите этот класс в свой проект и включите его в свой контроллер представления, вы идете:

CustomBadge *customBadge1 = [CustomBadge customBadgeWithString:@"Badge 1"];

... а затем добавьте customBadge1 в качестве подпредставления любой вещи, которую вы ставите под марку.

6 голосов
/ 22 мая 2012

У меня была эта проблема сегодня, поэтому я собрал подкласс UISegmentedControl, который позволяет вам легко устанавливать номера значков на каждом из сегментов.

Используя это так просто, как:

[segmentedControl setBadgeNumber:1 forSegmentAtIndex:0];

Снимок экрана, документация и исходный код: https://github.com/dave-thompson/MESegmentedControl.

0 голосов
/ 02 ноября 2010

Нет свойства или метода значка - в отличие от панели вкладок.Если вы хотите сделать это, вам просто нужно наложить на него свое изображение.Вы можете создать подкласс сегментированного элемента управления и создать функцию, которая сделает это за вас.

...