回答編集履歴
4
UI
test
CHANGED
@@ -16,9 +16,9 @@
|
|
16
16
|
|
17
17
|
|
18
18
|
|
19
|
-
1.
|
19
|
+
1. ContainerViewにぶら下がっているUIViewControllerからは、`.parent`で親のUIViewControllerを取得できます。
|
20
20
|
|
21
|
-
2. 親のViewControllerからは、`.childViewControllers`で
|
21
|
+
2. 親のUIViewControllerからは、`.childViewControllers`でContainerViewにぶら下がっているUIViewControllerを取得できます。
|
22
22
|
|
23
23
|
|
24
24
|
|
3
vcA
test
CHANGED
@@ -28,7 +28,7 @@
|
|
28
28
|
|
29
29
|
```swift
|
30
30
|
|
31
|
-
if let parent = self.parent, let vcA = parent.childViewControllers[0] as?
|
31
|
+
if let parent = self.parent, let vcA = parent.childViewControllers[0] as? ViewControllerA {
|
32
32
|
|
33
33
|
print(parent)
|
34
34
|
|
2
る
test
CHANGED
@@ -44,6 +44,6 @@
|
|
44
44
|
|
45
45
|
でいけると思います。
|
46
46
|
|
47
|
-
ContainerViewは使ったことがないので、もう少しスマートな書き方があ
|
47
|
+
ContainerViewは使ったことがないので、もう少しスマートな書き方があるかも知れませんが‥。
|
48
48
|
|
49
49
|
|
1
ps
test
CHANGED
@@ -9,3 +9,41 @@
|
|
9
9
|
これでは新しいインスタンスを生成することになるので、画面上のViewControllerAとは別物です。
|
10
10
|
|
11
11
|
画面上のViewControllerAのインスタンスを取得して.sort()を呼んで下さい。
|
12
|
+
|
13
|
+
|
14
|
+
|
15
|
+
【追記】
|
16
|
+
|
17
|
+
|
18
|
+
|
19
|
+
1. UIContainerViewにぶら下がっているUIViewControllerからは、`.parent`で親のUIViewControllerを取得できます。
|
20
|
+
|
21
|
+
2. 親のViewControllerからは、`.childViewControllers`でUIContainerViewにぶら下がっているUIViewControllerを取得できます。
|
22
|
+
|
23
|
+
|
24
|
+
|
25
|
+
以上を踏まえて、例えば、.childViewControllers[0]がViewControllerAで、.childViewControllers[1]がViewControllerBだったとすると、ViewControllerBの中で、
|
26
|
+
|
27
|
+
|
28
|
+
|
29
|
+
```swift
|
30
|
+
|
31
|
+
if let parent = self.parent, let vcA = parent.childViewControllers[0] as? vcA {
|
32
|
+
|
33
|
+
print(parent)
|
34
|
+
|
35
|
+
print(vcA)
|
36
|
+
|
37
|
+
vcA.sort() //sort!
|
38
|
+
|
39
|
+
}
|
40
|
+
|
41
|
+
```
|
42
|
+
|
43
|
+
|
44
|
+
|
45
|
+
でいけると思います。
|
46
|
+
|
47
|
+
ContainerViewは使ったことがないので、もう少しスマートな書き方がありかも知れませんが‥。
|
48
|
+
|
49
|
+
|