Организация UIView подвидов относительно внешних UIViews - PullRequest
3 голосов
/ 10 марта 2010

Как организовать (с точки зрения глубины) подпредставление представления, чтобы оно было перед другим представлением?

Иерархия выглядит следующим образом:

A--
   -C
   -D
B--
   -E
   -F

(A и B - представления с C & D и E & F в качестве подпредставлений соответственно.)

B находится выше уровня A, поэтому каждое подпредставление в B (E и F) находится над каждым подпредставлением в A (C и D). Как я могу сделать так, чтобы C отображался над всем в B, но чтобы остальное оставалось в порядке?

Другими словами, как я могу сделать порядок отображаемых видов (первый в списке самый верхний, а следующий - позади it):

C
B
E & F (same level)
A
D

Спасибо, Арсений

Ответы [ 5 ]

2 голосов
/ 10 марта 2010

Вы не можете сделать это так, как вы это описали. Либо вид A, либо B является передним, если вы хотите показать вид C перед видом B, но хотите оставить A и D позади него, вам нужно вывести C из вида A и показать его на том же уровне, что и A B.

1 голос
/ 10 марта 2010

Вы пытались использовать методы UIView для перемещения / перемещения видов?

insertSubview:aboveSubview:
insertSubview:atIndex:
insertSubview:belowSubview:
addSubViews:
bringSubviewToFront:
removeFromSuperview:
0 голосов
/ 10 марта 2010

Являются ли A и B UIViewControllers? А C, D, E, F UIViews добавлены в эти контроллеры? Вы не очень ясны.

Если все они являются подпредставлениями UIViewController, то смотрите мой предыдущий пост.

0 голосов
/ 10 марта 2010

Почему бы не сделать C родительским представлением A и B. Это должно делать то, что вы хотите.

C
  -B
    -E
    -F
  -A
    -D

Используйте функции в Управление иерархией представлений для изменения иерархии представлений.

0 голосов
/ 10 марта 2010

Если вы хотите, чтобы C отображал над всем в B, сделайте его подпредставлением B.

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