Я создаю пользовательский вид с рисунком UIBezierPath
. Я хочу обновить цвет заливки пользовательского цвета, когда изменения состояния основаны на ответе от сервера. Я использую свойство fillColor
как параметр для обновления цвета представления. Как я могу изменить программный код fillcolor
?Вызов вручную вручную
1
A
ответ
3
Вы должны никогда позвонить drawRect
. Вместо этого позвоните по телефону setNeedsDisplay
, и вам будет вызван drawRect
. Что касается изменения цвета, это просто вопрос планирования впереди - поставьте цвет, где ваша drawRect
рутина может его найти. Таким образом, например, если у вас есть свойство, содержащее цвет заливки, вы можете изменить его и вызвать setNeedsDisplay
, и таким образом представление может быть перерисовано с использованием нового значения свойства цвета заливки.
Мэтт говорит правду (как обычно). Вызов drawRect самостоятельно запрещен. Это будет «деформировать ваш ум, вычеркнуть позвоночник и заставить врага выиграть войну», перефразировать Джорджа Карлина. –