У меня есть класс, который расширяет UIView, и у него есть UIImageView, который добавляется как подпредставление при создании UIView.Я переопределяю метод Draw (он же drawRect) и рисую на текущем CGContext просто отлично, если я не добавляю UIImageView или если я устанавливаю для него Opaque значение false, а для BackgroudColor значение Clear и оставляю для Image значение null (он же nil).Как только я устанавливаю BackgroundColor UIImageView в реальный цвет, или я устанавливаю Image в UIImageView в нечто отличное от нуля, все, что я рисую, рисуется ПОД UIImageView.
Это кажется странным, если, если я рисуюв контексте родителя, который должен отображаться над любыми вложенными представлениями.Однако кажется, что стек перевернут вверх ногами от того, что можно было бы подумать.Кажется, можно было бы ожидать, что самый высокий уровень всегда является родительским со всеми вложенными представлениями, добавляемыми к более низким уровням в порядке их добавления.Похоже, это не так.
Я попытался отправить вспомогательный вид спереди и сзади, но это ничего не изменило.
В основном, если мой родительский вид Opaque имеет значение false, а его цвет фона - Clear, я ожидаю, что любые фигуры или линии, которые я рисую в его контексте в его методе рисования, будут отображаться в верхней части любых подпредставлений, которые могут быть.
Как я могу нарисовать в родительском представлении и, показывая ниже, что рисуется в подпредставлении?
Есть ли на сайте Apple какая-либо документация, объясняющая Z-порядок родительского вида и его подвидов??
Примеры в C # или Objective-C хороши.