Как работает Shadow в Twitter для Mac, когда смена вкладки? - PullRequest
0 голосов
/ 06 января 2012

При смене вкладки в Twitter для Mac старый вид сдвигается влево, а новый вид становится центром. за старым и новым взглядом скрывается тень.

Я пробовал:

viewController.view.layer.masksToBounds = NO;
viewController.view.layer.shadowRadius = 50.0;
viewController.view.layer.shadowColor = [TUIColor blackColor].CGColor;
viewController.view.layer.shadowOpacity = 0.4;

и использовал viewController.view.layer.shouldRasterize = YES;, пытаясь ускорить его.

Но все равно чувствую отставание, тогда твиттер для Mac.

Каков наилучший способ добавить эти тени?

1 Ответ

0 голосов
/ 06 января 2012

Посмотрите на атрибут shadowPath CALayer. Обычно, если вы хотите точно указать слою, как должна быть нарисована тень, он будет быстрее, чем по умолчанию, где он попытается вычислить тень на основе альфа-канала полного обзора.

Например:

    CGPathRef shadow = CGPathCreateWithRect(CGRectInset(self.bounds, -3, 1), NULL);
    [self.layer setShadowPath:shadow];
    [self.layer setShadowColor:[[UIColor colorWithWhite:0 alpha:0.5f] CGColor]];
    [self.layer setShadowOpacity:0];
    [self.layer setShadowRadius:8];
    CFRelease(shadow);

(это код iOS, но я считаю, что единственное, что вам нужно изменить, это ссылка на UIColor).

...