Вырезание прозрачного отверстия в UIView.

Пытаемся создать представление с прозрачной рамкой внутри, чтобы виды за представлением можно было видеть через эту прозрачную рамку, но области за ее пределами не просвечивались. Так что, по сути, окно в представлении.

Надеясь, что получится сделать что-то вроде этого:

 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);

но прозрачный цвет не перекрывает черный, поэтому весь фон черный. Есть идеи по этому поводу?

45
задан Ajumal 29 April 2015 в 07:43
поделиться