回答編集履歴
6
修正
answer
CHANGED
@@ -58,4 +58,7 @@
|
|
58
58
|
dismissViewControllerAnimated(true, completion: nil)
|
59
59
|
}
|
60
60
|
}
|
61
|
-
```
|
61
|
+
```
|
62
|
+
|
63
|
+
コードで書いている例をStoryboardで表すと以下の様になっています。
|
64
|
+

|
5
修正
answer
CHANGED
@@ -1,3 +1,12 @@
|
|
1
|
+
> presentModalViewControllerが非推奨になっているとのことで、実現方法や検索ワードがわからず詰まっているのでお力をお貸しいただきたいです。
|
2
|
+
|
3
|
+
```swift
|
4
|
+
// 現在は以下のメソッドで同じことができます
|
5
|
+
@available(iOS 5.0, *)
|
6
|
+
public func presentViewController(viewControllerToPresent: UIViewController, animated flag: Bool, completion: (() -> Void)?)
|
7
|
+
```
|
8
|
+
|
9
|
+
|
1
10
|
> アプリケーションのヘッダーはすべて、UINavigationControllerでしかつくれないのでしょうか?また、その方法が一般的なのでしょうか?
|
2
11
|
|
3
12
|
UINavigationControllerは階層的な画面遷移を管理するクラスです、NavigationControllerを使用してもヘッダーは非表示にできるので自分で好きに作成することができます。
|
4
修正
answer
CHANGED
@@ -1,4 +1,3 @@
|
|
1
|
-
|
2
1
|
> アプリケーションのヘッダーはすべて、UINavigationControllerでしかつくれないのでしょうか?また、その方法が一般的なのでしょうか?
|
3
2
|
|
4
3
|
UINavigationControllerは階層的な画面遷移を管理するクラスです、NavigationControllerを使用してもヘッダーは非表示にできるので自分で好きに作成することができます。
|
@@ -20,7 +19,7 @@
|
|
20
19
|
@IBAction func openModalView(sender: UIButton) {
|
21
20
|
|
22
21
|
// 遷移先のViewControllerを生成
|
23
|
-
let modalViewController =
|
22
|
+
let modalViewController = ModalViewController()
|
24
23
|
// NavigationControllerのrootViewに遷移先のViewを設定
|
25
24
|
let navi = UINavigationController(rootViewController: modalViewController)
|
26
25
|
|
@@ -35,14 +34,14 @@
|
|
35
34
|
}
|
36
35
|
|
37
36
|
// 遷移先のViewControllre
|
38
|
-
class
|
37
|
+
class ModalViewController: UIViewController {
|
39
38
|
|
40
39
|
override func viewDidLoad() {
|
41
40
|
super.viewDidLoad()
|
42
41
|
self.view.backgroundColor = UIColor.yellowColor()
|
43
42
|
self.title = "NextViewController"
|
44
43
|
|
45
|
-
let closeButtonItem = UIBarButtonItem(title: "Close", style: .Plain, target: self, action: #selector(
|
44
|
+
let closeButtonItem = UIBarButtonItem(title: "Close", style: .Plain, target: self, action: #selector(ModalViewController.close))
|
46
45
|
self.navigationItem.leftBarButtonItem = closeButtonItem
|
47
46
|
}
|
48
47
|
|
3
修正
answer
CHANGED
@@ -1,7 +1,13 @@
|
|
1
|
-
UINavigationControllerのPushで進んだ画面からNavigationControllerに紐付いたViewをモーダルで出したいということでしょうか?
|
2
1
|
|
3
|
-
|
2
|
+
> アプリケーションのヘッダーはすべて、UINavigationControllerでしかつくれないのでしょうか?また、その方法が一般的なのでしょうか?
|
4
3
|
|
4
|
+
UINavigationControllerは階層的な画面遷移を管理するクラスです、NavigationControllerを使用してもヘッダーは非表示にできるので自分で好きに作成することができます。
|
5
|
+
NavigationBarはカスタムもできるので、そちらに自分のデザインを当てはめるのが簡単で、一般的だと思います。
|
6
|
+
|
7
|
+
> navigationControllerのpushViewControllerからCoverVerticalのアニメーションを付けて簡単にページ遷移することはできないのでしょうか?
|
8
|
+
|
9
|
+
以下の書き方がその例になると思います。
|
10
|
+
|
5
11
|
```swift
|
6
12
|
import UIKit
|
7
13
|
|
2
修正
answer
CHANGED
@@ -19,11 +19,10 @@
|
|
19
19
|
let navi = UINavigationController(rootViewController: modalViewController)
|
20
20
|
|
21
21
|
// トランジションを指定したい場合は以下の行を追加
|
22
|
-
navi.modalTransitionStyle = .FlipHorizontal
|
22
|
+
// navi.modalTransitionStyle = .FlipHorizontal
|
23
23
|
presentViewController(navi, animated: true, completion: nil)
|
24
24
|
}
|
25
25
|
|
26
|
-
|
27
26
|
override func didReceiveMemoryWarning() {
|
28
27
|
super.didReceiveMemoryWarning()
|
29
28
|
}
|
@@ -37,7 +36,6 @@
|
|
37
36
|
self.view.backgroundColor = UIColor.yellowColor()
|
38
37
|
self.title = "NextViewController"
|
39
38
|
|
40
|
-
|
41
39
|
let closeButtonItem = UIBarButtonItem(title: "Close", style: .Plain, target: self, action: #selector(NextViewController.close))
|
42
40
|
self.navigationItem.leftBarButtonItem = closeButtonItem
|
43
41
|
}
|
1
修正
answer
CHANGED
@@ -36,6 +36,14 @@
|
|
36
36
|
super.viewDidLoad()
|
37
37
|
self.view.backgroundColor = UIColor.yellowColor()
|
38
38
|
self.title = "NextViewController"
|
39
|
+
|
40
|
+
|
41
|
+
let closeButtonItem = UIBarButtonItem(title: "Close", style: .Plain, target: self, action: #selector(NextViewController.close))
|
42
|
+
self.navigationItem.leftBarButtonItem = closeButtonItem
|
39
43
|
}
|
44
|
+
|
45
|
+
func close() {
|
46
|
+
dismissViewControllerAnimated(true, completion: nil)
|
47
|
+
}
|
40
48
|
}
|
41
49
|
```
|