Помимо того, что CIDiskBlur
недоступен (начиная с iOS SDK 5.1) и что setFilters:
, по-видимому, недоступен, вы можете сделать следующее:
Создайте входной CIImage из содержимого вашего слоя:
CIImage *inputImage = [CIImage imageWithCGImage:(CGImageRef)(myCircle.contents)];`
Примените ваши фильтры и получите результат в CGImageRef:
CIFilter *filter = [CIFilter filterWith...];// A filter that is available in iOS or a custom one :)
...
CIImage *outputImage = [filter outputImage];
CIContext *context = [CIContext contextWithOptions:nil];
CGImageRef cgimg = [context createCGImage:outputImage fromRect:[outputImage extent]];
Наконец, установите CGImageRef для слоя:
[myCircle setContents:(id)cgimg];
Это должно работать:)