Как установить радиус угла в drawRect

Код ниже в моем методе drawRect рисует прямоугольник на моем контроллере представления. Я бы хотел установить для этого угловой радиус. Что мне не хватает?

CGRect rectangle = CGRectMake(20, 22, 280, 460);
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetRGBFillColor(context, 255, 255, 255, 1.0);
CGContextSetRGBStrokeColor(context, 1.0, 0.0, 0.0, 1.0);
CGContextFillRect(context, rectangle);

person lbudge    schedule 01.05.2014    source источник
comment
не дубликат - ваше предложение рисует контур угла и не применяется к моему существующему объекту   -  person lbudge    schedule 01.05.2014
comment
ссылка в порядке. вы можете обвести закругленный прямоугольник, вы можете заполнить его, или вы можете сделать и то, и другое.   -  person Michael    schedule 02.05.2014


Ответы (1)


Пожалуйста, попробуйте следующее:

CGRect rectangle = CGRectMake(20, 22, 280, 460);
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetRGBFillColor(context, 255, 255, 255, 1.0);
CGContextSetRGBStrokeColor(context, 1.0, 0.0, 0.0, 1.0);
//CGContextFillRect(context, rectangle);

UIBezierPath *bezierPath = [UIBezierPath bezierPathWithRoundedRect: rectangle cornerRadius:15.0];

[bezierPath fill];
person Avt    schedule 01.05.2014
comment
Я все еще думаю, что ваш вопрос дублирует stackoverflow.com/questions/2835448/ - person Avt; 02.05.2014
comment
Swift: fillColor.setFill (); let path = UIBezierPath (roundedRect: rect, cornerRadius: cornerRadius); path.fill (); - person NikeAlive; 22.01.2019