UIView всегда прямоугольной формы, вы не можете изменить это.Тем не менее, вы можете получить желаемый эффект, используя маскировку CALayer.Создайте UIView и примените к нему пользовательскую маску, чтобы маска содержала соответствующие данные для треугольника.Тогда любой фактический контент, который вы поместите в свой UIView, будет виден только в соответствующей области в форме треугольника.
Чтобы создать слой маски, вы можете использовать изображение (например, png) или базовую графику дляНарисуйте треугольник.
В документах Apple Quartz 2D есть масса информации .
Вот пример:
http://cocoadev.com/MaskingACALayer
См. Также этот вопрос о переполнении стека:
Изучение основной графики
В документах API Apple для UIView и CALayer также есть информация об этом.