iphone изменить цвет заливки фигуры, нарисованной в контексте

Я нарисовал замкнутую форму с помощью CGContext и залил ее цветом по умолчанию. Я хочу изменить цвет заливки для какого-то события, как мне это сделать? В контексте есть только одна закрытая форма.


person Ali Awais    schedule 13.10.2009    source источник


Ответы (2)


Вы можете изменить цвет заливки, перерисовав всю фигуру. Как вы упомянули, просто вызовите [self setNeedsDisplay] и в вашей реализации drawRect: измените цвет заливки в соответствии с событием.

К сожалению, вы не можете изменить цвет заливки фигуры без перерисовки, но в зависимости от случая вы можете избежать перерисовки и добиться нужного эффекта другими способами, такими как изменение режима наложения. Посмотрите документацию CGContext, чтобы узнать, есть ли что-то, что может удовлетворить ваши потребности.

person Dimitris    schedule 16.01.2010

Я много раз пытался это сделать, но не мог. Как бы я ни выполнял задачу, вызывая drawRect через [self setNeedsDisplay]. setNeedsDisplay — это метод UIVIew, который вызывает функцию drawRect.

person Ali Awais    schedule 26.10.2009