Эффект тени для UISegmentedControl? - PullRequest
2 голосов
/ 14 июля 2009

Я использую UISegmentedControl с изображениями, которые находятся в UIBarButtonItem, который сам находится в UIToolbar. Если я использую изображение для «нормального» UIBarButtonItem, автоматически применяется красивый эффект тени. Однако то же самое не применяется автоматически к изображениям в UISegmentedControl, которые принадлежат UIBarButtonItem. Я думал о создании подкласса UISegmentedControl для применения этого эффекта тени, но я не совсем уверен, с чего начать с графическими API для достижения этой цели. Я думаю, мне нужно переопределить:

  • (аннулируются) DrawRect: (CGRect) Прямоугольник;

но кроме этого, я не уверен, куда идти.

У кого-нибудь есть предложения по отправной точке?

Другой вариант - применить эффект тени непосредственно к исходным изображениям. Тем не менее, мои навыки в отделе иконок / графики тоже не на высоте. Какие-нибудь предложения для инструментов, которые могли бы помочь мне достигнуть этого эффекта? Может быть, через ImageMagick или что-то?

Заранее спасибо за любую помощь!

1 Ответ

0 голосов
/ 03 августа 2010

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

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

[self setContentMode:UIViewContentModeRedraw];
[self setFrame:CGRectMake(self.frame.origin.x, self.frame.origin.y, self.frame.size.width+1, self.frame.size.height)];
...