なんとかするから、なんとかなる

エンジニア関係のことを書きます

iOS

iOS のAutoLayout(オートレイアウト)を扱うときのTipsまとめ

AutoLayout AutoLayoutエンジン AutoLayoutエンジンは外接矩形(装飾(影など)を除いたViewで計算) Debugのテク デバッグ中に外接矩形を見るためには [Product]->[Scheme]->[EditScheme]->[Run]->[Argument]に-UIViewShowAlignmentRectsを追加 Instric Con…

iOSのPush Notification登録の流れ

iOSのプッシュ通知の登録流れが割と忘れやすいので、まとめてみる 証明書署名を申請するCSR アプリケーションをプッシュ通知に登録(APNs)する Push Notification開発証明書を発行する Provisioning Profilesを作成する。

iOSでTimelapse動画作成アプリを作ったときに利用したFrameworkおよびライブラリのまとめ

以前にTimelapse動画を作成 iOSアプリを作成したことがあったので、そのまとめです。 使用したFrameworkおよびライブラリ AVFoundation AVAsset 1つ以上のメディアデータのコレクションを集約したもの コレクションのタイトル、再生時間、本来の表示サイズな…

UILabelのフォントサイズだけを変更する

UILabelのフォントを変更する場合、次の方法がまず思い浮かぶでしょう。 var label = UILabel() lablel.font = UIFont.systemFontOfSize(20) でもこれだと、フォント自体も変わってしまう。システム以外のフォントを使っているときにフォントサイズを変更だ…

Implicit Getter Violation の修正方法

SwiftLintを使っているときに見かける"Implicit Getter Violation" 要するに、Gettterの宣言方法がスマートではないということ。 修正方法は次の通り。 // × var hoge: String { get { return "fuga" } } // ◯ var hoge: String { return "fuga" } SwiftLint…

Jenkinsを使ってiOSの自動ビルドおよびテストをする(ipa生成、テスト実行編)

はじめに 前回に引き続き、iOSの自動ビルド環境を作っていきたいと思います。 今回はBuild実行後のipaの作成方法と、Build後にテストを実行する方法です。 前回 Jenkinsを使ってiOSの自動ビルドおよびテストをする(Jenkinsビルド編) - なんとかするから、…

Jenkinsを使ってiOSの自動ビルドおよびテストをする(Jenkinsビルド編)

はじめに 前回の続きで、今回はとりあえずサンプルプロジェクトをJenkinsでビルドしてみます。 前回 Jenkinsを使ってiOSの自動ビルドおよびテストをする(Jenkins準備編) - なんとかするから、なんとかなる 必要のもの Apple Developerライセンス(Developer…

Jenkinsを使ってiOSの自動ビルドおよびテストをする(Jenkins準備編)

はじめに Jenkinsを使ってiOSの自動ビルドとテスト環境を作っていきたいと思います。 はじめはLocalのGitRepogitoryに対して自動ビルドを実行する。 そのあとipa生成とテスト。 最後に結果をslackへ通知を試してみたいと思います。 環境 macOSX Sierra Jenki…

UserDefaultsを初期化する

UserDefaults を初期化するためには if let bundleId = Bundle.main.bundleIdentifier { UserDefaults.standard.removePersistentDomain(forName: bundleId) } persistentDomain(forName:)で domainNameで指定した、KeyとValueのディクショナリーが受け取れ…

iOSで使いにくいUserDefaultをなんとかする

はじめに iOSアプリにおいて、アプリを消しても値を保存しておける、UserDefaultはとても便利だと思う。 しかしながら、どうしても使いにくい部分が存在する。 例えば、UserDefaultの値を取り出すKeyがStringなところだ。 よくある使い方 // 保存する UserDe…