Пользовательская производительность UIView - PullRequest
0 голосов
/ 11 марта 2019

Я делаю пользовательский UIView и делаю все в draw(_ rect: CGRect) методе.Также там я хочу добавить новый вид, вызвав метод self.addSubView, с добавлением ограничений и распознавателей жестов.

Я думаю о производительности, можно ли все это делать методом draw(_ rect: CGRect).

Спасибо.

Ответы [ 2 ]

2 голосов
/ 11 марта 2019

Пользовательский чертеж в переопределенном методе draw сам по себе не создает проблемы с производительностью.Однако реализация метода небрежного рисования будет причиной этого.

Если вы добавляете просто кодов рисования там, и вы делаете это с наилучшей практикой.Я верю, что тебе пора.

1 голос
/ 11 марта 2019

нормально ли это делать, все в draw(_ rect: CGRect) методе

Абсолютно нет.Это не имеет ничего общего с производительностью;это связано с тем, что означает draw.Это означает ничья .Единственное, что вы должны когда-либо делать в draw, это давать команды рисования, чтобы рисовать в графическом контексте, который был задвинут для вас.

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

Если вы хотите добавить ограничения и распознаватели жестов, сделайте это в подходящее время, например, когда представление помещается вего супервизия, или когда должно произойти макетирование.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...