недоступно. Как бы вы сделали это в OSX?
я устанавливаю свойство transform моего CALayer с помощью CATransform3DRotate, слой корректно поворачивается. Однако края слоя неровные и не сглаживаются. Я прочитал пару сообщений на эту тему:
iPhone: CALayer + повернуть в 3D + сглаживание?
iPhone - Неровные края при применении перспективы к CALayer
Я попытался включить их совет, установив следующие свойства на моем диагональном слое
CALayer* layer = myView.layer;
layer.shadowOpacity = 0.01;
layer.edgeAntialiasingMask = kCALayerTopEdge | kCALayerBottomEdge | kCALayerRightEdge | kCALayerLeftEdge;
layer.borderWidth = 1.0;
layer.borderColor = [UIColor clearColor].CGColor;
layer.backgroundColor = [UIColor greenColor].CGColor;
Я также переопределил drawLayer: inContext: метод моего диагонального слоя, чтобы обеспечить сглаживание:
-(void)drawLayer:(CALayer*)layer inContext:(CGContextRef)context
{
CGContextSetAllowsAntialiasing(context, true);
CGContextSetShouldAntialias(context, true);
CGContextSetFillColorWithColor(context, [UIColor greenColor].CGColor);
CGContextFillRect(context, self.bounds);
}
Чего мне не хватает?