Corte agujero transparente en UIView

Buscando para crear una vista que tenga un marco transparente en su interior para que las vistas detrás de la vista puedan verse a través de este marco transparente, pero las áreas fuera de este no se mostrarán. Esencialmente, una ventana dentro de la vista.

Esperando poder hacer algo como esto:

 CGRect hole = CGRectMake(100, 100, 250, 250);
CGContextRef context = UIGraphicsGetCurrentContext();

CGContextSetFillColorWithColor(context, [UIColor blackColor].CGColor);
CGContextFillRect(context, rect);

CGContextAddRect(context, hole);
CGContextClip(context);

CGContextSetFillColorWithColor(context, [UIColor clearColor].CGColor);
CGContextFillRect(context, rect);

pero el claro no anula el negro, por lo que todo el fondo es negro. ¿Alguna idea en este sentido?

Respuestas a la pregunta(32)

Su respuesta a la pregunta