Я пытался создать сложный макет (например, редактор изображений, но не совсем редактор изображений. Это больше похоже на добавление дочерних представлений над родительским представлением и обработку сценария ios, например, масштабирование, панорамирование и т. Д. c), где мне было нужно чтобы изменить позиции дочернего вида много раз.
Чтобы достичь этого, я использовал метод AbsoluteLayout
и AbsoluteLayout.SetLayoutBounds
для изменения позиции дочернего вида.
AbsoluteLayout.SetLayoutBounds(this, this.BoundRect);
Он работал довольно хорошо , Но дочерние представления требовали многократного размещения при масштабировании и панорамировании. Увеличивалось число раз, когда вызывался метод AbsoluteLayout.SetLayoutBounds
, и, следовательно, пользовательский интерфейс не отвечал.
Поэтому сейчас я пытаюсь использовать Scale и Translate вместо AbsoluteLayout.SetLayoutBounds
.
Требуется мнение о том, повлияет ли манипулирование Scale и Translate на производительность пользовательского интерфейса. Мне нужно, чтобы это вызывалось много раз (необходимо использовать его несколько раз, я сохранил его минимальным).
Заранее спасибо.