Я не могу понять, почему TextGlowDemo больше не работает в ios7

Я работаю над проектом, который использует код из этого приложения GitHub, TextGlowDemo, Приложение в основном использует платформу QuartzCore для добавления тени к uilabel путем переопределения drawTextInRect и добавления CGContextSetShadow а также CGContextSetShadowWithColor чтобы тень была похожа на светящийся текст. Программа отлично работает в ios 6, но в ios7 свечение таинственным образом исчезает. Я не получаю никаких предупреждений об устаревших методах, поэтому я не знаю, что происходит, какие-либо идеи?

Весь проект можно найти здесь: https://github.com/andrewgleave/TextGlowDemo

вот код, который рисует свечение

- (void)drawTextInRect:(CGRect)rect 
{
    CGContextRef context = UIGraphicsGetCurrentContext();
    CGContextSaveGState(context);

    CGContextSetShadow(context, self.glowOffset, self.glowAmount);
    CGContextSetShadowWithColor(context, self.glowOffset, self.glowAmount, glowColorRef);

    [super drawTextInRect:rect];

    CGContextRestoreGState(context);
}

2 ответа

Похоже, последнее обновление IOS исправило эту проблему. Он начал работать до того, как у меня появилась возможность попробовать решение Бретта.

Я считаю, что ваш self.glowOffset, вероятно, CGSizeZero. Я не уверен, почему, но в iOS7 вы не видите тень со смещением с CGMakeSize(0.0f, 0.0f).

Другие вопросы по тегам