¿Cómo puedo eliminar una vista UIView con esquinas redondeadas de su vista principal?
Estoy creando una aplicación de iPad para 3.2 y posterior. Mi aplicación tiene una vista superpuesta que tiene una semitransparencia que oscurece todo lo que está debajo. En el medio de esta vista, estoy cortando un agujero en esta semitransparencia para dejar que parte del fondo se filtre indemne, con este código:
- (void)drawRect:(CGRect)rect {
CGContextRef context = UIGraphicsGetCurrentContext();
CGRect intersection = CGRectIntersection(hole.frame, rect);
CGContextClearRect(context, intersection);
}
Además, la vista 'agujero' tiene esquinas redondeadas, aplicadas a través de:
self.layer.cornerRadius = 4.25;
Esto funciona muy bien, excepto por un pequeño problema: estas esquinas redondeadas no se tienen en cuenta, por lo que el orificio que se corta tiene esquinas cuadradas en lugar de redondeadas. Necesito arreglar esto, pero no tengo idea de cómo. ¿Alguna idea, ejemplos, pensamientos?