iOS Можно ли установить режим наложения на UILabel? - PullRequest
2 голосов
/ 09 февраля 2012

Скажем, к примеру, у вас есть какой-то программный текст, подобный следующему:

myLabel = [[UILabel alloc] initWithFrame:CGRectMake(33, 10, 254, 100)];
[myLabel setBackgroundColor:[UIColor clearColor]];
[myLabel setFont:[UIFont fontWithName:@"SomeFont" size:76]];
[myLabel setTextColor:[UIColor colorWithRed:0.227451 green:0.666667 blue:1 alpha:0.9]];

Есть ли способ применить режим наложения к тексту?Скажем, например, Color Dodge?

1 Ответ

1 голос
/ 09 февраля 2012

Нет, это невозможно.

Если у вас есть фиксированный фон, вы можете сделать это, создав собственный подкласс представления и реализовав метод drawRect самостоятельно и используя методы CGContext, чтобы установить режим наложения и нарисоватьstring.

Но вы не можете использовать смешивание между представлениями (кроме альфа-смешивания), поэтому этот тип смешивания работает, только если вы устанавливаете фон вручную в drawRect.Это невозможно сделать, если фон вашего вида прозрачный.

...