UIsegment control проблема размера текста iphone - PullRequest
0 голосов
/ 18 марта 2011

Я сделал сегмент управления.

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

Может кто-нибудь сказать мне, как решить эту проблему ??

Ответы [ 3 ]

5 голосов
/ 18 марта 2011

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

[yourSegmentedControl setWidth:somethingLargeEnough forSegmentAtIndex:segmentIndex];

(хотя в вашем случае этого может быть недостаточно)

1 голос
/ 18 марта 2011

Решение состоит в том, чтобы использовать тот факт, что сегментированный элемент управления также может быть построен из массива UIImages.

Вы можете преобразовать текст в UIImage следующим образом:
Как использоватьфункциональность рисования NSString для создания UIImage из текста

Изменение размера шрифта должно быть довольно простым.

1 голос
/ 18 марта 2011

@ rathodrc:

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

Например:

Скажите, если заголовок для каждого сегмента фиксирован, чтобы у segmentedControl с 3 сегментами были заголовки (скажем, SegA, SegB и SegC)

Затем вы можете создавать изображения для каждого сегмента сегментированного управления с заголовком сегмента.

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

Помните, что размер изображения должен быть точно таким же, как ширина и высота сегмента.

Примечание:

Если вы даете заголовки сегментов динамически, а в вашем приложении они динамически изменяются, то это невозможно.

Надеюсь, это поможет вам. : -)

...