iOS 9 週連続 Bootcamp!6週目 UIKitとXCode7 イベントレポート
iOS9 Xcode7のイベントレポートです。
導入
iOS 9 週連続 Bootcamp!6週目 UIKitとXCode7 @dots http://eventdots.jp/event/573156
1.UIKit 平屋さん クラスメソッド株式会社
UIStackView、NSLayoutAnchor、UILayoutGuide のサンプルコード https://github.com/hirayaCM/iOS9UIKitDemos/
UIStackView
概要
viewを縦横にレイアウトするクラス
good
- AutoLayoutの制約を設定する作業が減る
- メンテナンスしやすくなる →それぞれの要素に制約を
今まで:それぞれのviewにautoLayoutを使用していた
caution
- iOS9以降で使用可能
- UIStackViewを仕組み自体を知る事が必要
仕組み(内部)
- arrengeSubviews →管理するviewの配列
- axis →整列する方向(水平/垂直)
- distribution →軸方向にviewをどう並べるか
- alliment →軸に対し垂直方向にviewをどう並べるか
- spcing
→view間の感覚の設定
仕組み(外部)
UIStackViewの位置を指定する
NSLayoutAnchor
概要
NSLayoutConstraintを生成する為のクラス iOS9以降から 生成用メソッド6個のみ →他のviewのanchorと使用
good
制約を設定するコードが短くなる 読みやすい
参考
Reference
UILayoutGuide
概要
ホワイトスペースを定義する為のクラス (ホワイトスペース→コンテンツのない領域)
good
ホワイトスペースを軽く実装出来る 今まで:blankのviewを使用
プロパティ
Anchorを持っている →NSLayoutAnchorを使用できる UIViewではない →UIViewより軽量
caution
iOS9以降にて使用可能 SBでの追加は出来ない→見つかんない→コードで作成
memo
UILayoutGuideないときは等間隔にボタンを配置するとき結構面倒だったような。 ローカライズ対応で動的にボタンのサイズが変わる場合とか
2.XCode7
熊谷さん EZ-NET
Swift2
エラーハンドリング/foreach etc追加
呼出改装検索
機能がどこで使われているか検索出来る
インターフェイス定義の確認
@swift OBJ-c .hで使うとswiftで表示される 左上の四角→generete~で実行される interfaceのみ綺麗に表示される
無料のオンデバイス開発
developerにならなくても実機確認できるよ
ストリーボード参照
複数ののストリーボードを一枚で使用出来る http://dev.classmethod.jp/smartphone/iphone/storyboardreference/
オンデマンドリソース
AppStoreに画像等のデータを保持出来る
→ダウンロード時にソースのみ→随時画像等をAppStoreからDL が出来る
Resouce Tagsで設定
BuildSettingでデバッグ時のリソースサーバーを設定可能
UIテスト
画面操作を自動でテスト コードでアプリを操作 操作からコードを生成出来る
例:テキストフィールドに文字が入った時にボタンを押せるようになる
テストの登録
テストターゲットを登録 →UITestingbundle testで始まるメソッドを記載
テストコード書く
app/window/menubar/buttonのインスタンスをつくる button.click() AsserFalse(button.enabled)
操作からコードを生成出来る
左下のrecボタンで実際に動かした動作がコードに記載される
tips
ピンポイントに操作をコード化したい rec→一時停止→操作を進める→再実行→操作
結果
~で結果確認 lognavigatarで詳細確認→画面のスクショも見れる
caution
テスト中は実際に動作します! なので他動作は出来ない 時間がかかる →5.6個で10分くらい!?
コードカバレッジ
どのコードをどれだけ実行されたかを収集 使われた割合 メソッド/プロパティ毎に
good
テストの甘さが見れる
方法
Edit schem→test→gather coverge data でtestすればok
確認
lognaviで確認できる
エディタで直前にテストした時の呼出回数確認出来る editar→showcodecovergeで見れる
caution
テストの度に行われる
ドキュメントコメント
概要
コードの型/機能にコメント追加出来る
MarkDownっぽい!!
装飾/画像/リンクが追加可能
Swift専用
プレイグランド強化 →readme的な事が作りやすくなる
書き方
コメント行内にmarkup
リッチコメント
ファイルインスペクタで変更可能
kobitoっぽくしてくれる //: /: /
参考
http://ericasadun.com/2015/10/15/announcing-swift-documentation-markup/