2013-07-09 3 views
1

У меня есть UIImaveView (красный), который я повернул до 45 °. В этом я рисовал UIImage с градиентом и размещал его над подкладкой UIImageView. Из-за того, что я повернул его на 45 °, этот UIImageView крутится над моим под UIImageView (серый).crop uiimageview, который находится за пределами другого вида

Итак, я хотел обрезать этот UIImageView, чтобы он входил в верхний левый угол, но не перекрывал рамку подстилающего UIImageView. Должны быть варианты с рисованием путей и т. Д., Но я надеюсь, что у кого-нибудь есть более простое решение?

http://i.stack.imgur.com/C89nP.png

решение

UIImageView *rotatedGradient = [[UIImageView alloc] initWithFrame:CGRectMake(-20, -20, 50, 50)]; 
[_underlayingImageView addSubview:rotatedGradient]; 
[_underlayingImageView setClipsToBounds:YES]; 

ответ

1

Как правило, вы должны добавить свой вид (красный) как подвид другой точки зрения (серый), а затем установите SuperView (серый) в clipsToBounds = YES, который будет сообщать ему, что подпунктам не разрешается рисовать вне рамки.

Если оба вида (красный и серый) являются областями другого вида, который представляет интересующий вас фрейм, вы можете установить clipsToBounds = YES на общий вид супервизора.

+0

Да, простое решение, не подумал об этом. –

Смежные вопросы