- 追加された行はこの色です。
- 削除された行はこの色です。
&tag(Storyboard);
*目次 [#ff073cc6]
#contents
*関連ページ [#h2ee4744]
-[[Xcode]]
*参考情報 [#t1aa4d0a]
-[[[iOS]これからiOSアプリを作る方向け Storyboardで画面遷移を作る | Developers.IO:http://dev.classmethod.jp/smartphone/iphone/remind-storyboard/]]
*概要 [#y23e5151]
-画面遷移の仕組み
*Storyboard Editor [#pa5e7896]
**ストーリーボードのデバイスがデカイ? [#ke7d76f9]
-一応仕様らしいが、iPhoneに固定することもできるらしい。[[SwiftをiOSシミュレータで実行:「はじめてのSwiftプログラミング」著者サポートページ:http://supportdoc.net/support-swift/xcode6.html]]
*テーブルビュー [#jc45a166]
**一番上のセルがステータスバーにかぶってしまう [#i755c643]
-最初にテーブルのサイズをステータスバー以下にしておいてAutoLayoutのPinを設定すれば良い。
-限界まで設定するとかぶるが、ステータスバーの下にしてから始めれば自動的に隙間があく。
**左右のマージン [#a8d5b827]
-Pinの設定でConstraint to Marginのせい。
**UITableViewControllerを使う [#fba5a154]
-Single View Applicationで作成。
-ViewController.swiftを削除。
-Main.storyboardの中のView Controllerを削除。かわりにTable View Controllerを追加。
--Attributes InspectorのView Controllerセクションにある「Is Initial View Controller」にチェック。
-「File > New」からUITableViewControllerクラスのサブクラス(例MyTableViewController)を作成して追加。
-Table View ControllerのクラスをMyTableViewControllerとする。
-UITableViewControllerにナビゲーションコントローラーやツールバーを追加したい場合、下記のナビゲーションコントローラーを参照のこと。
※UITableViewControllerを使わないと、Static Cellsが使えない。
*ナビゲーションコントローラー [#rdd06163]
**ナビゲーションコントローラーを使う [#d9f032de]
-[[Xcode6.xのStoryboardにてToolBar(下のバー)が出ない人へ | 3URPRISE.BLOG:http://smileapps.sakura.ne.jp/blg/?p=902]]
-既存のView Controllerを選択し、「Editor > Embed in > Navigation Controller」を実行。
※ちなみに[[ios - StoryboardのNavigation Barの存在理由 - スタック・オーバーフロー:http://ja.stackoverflow.com/questions/12606/storyboard%E3%81%AEnavigation-bar%E3%81%AE%E5%AD%98%E5%9C%A8%E7%90%86%E7%94%B1]]によると、NavigationBarを個別に追加する必要はほとんどないらしい。
**ナビゲーションコントローラーに編集ボタンを追加 [#r031d9fc]
-上の方法でナビゲーションコントローラーを追加した場合、ViewControllerのviewDidLoadで以下を実行する。
#pre{{
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
self.navigationItem.rightBarButtonItem = self.editButtonItem()
}
}}
**ナビゲーションコントローラーにツールバーを表示する [#p751da52]
-ナビゲーションコントローラーを使っている場合、Attributes Inspectorの「Shows Toolbar」にチェックを入れる。
-Interface Builderで操作してもだめ。
**ナビゲーションコントローラーのツールバーの表示非表示を切り替える [#u998019c]
-例えば編集ボタンが押されたとき、ツールバーを非表示にしたいような場合
#pre{{
override func setEditing(editing: Bool, animated: Bool) {
super.setEditing(editing, animated: animated);
self.navigationController?.setToolbarHidden(editing, animated:true)
}
}}