Corredor

ウェブ、プログラミングの勉強メモ。

Swift

Xcode で Swift アプリが突然うまくビルドできなくなったら

Swift で実装した iOS アプリを Xcode で入れ直そうとしたら、急に以下のようなエラーが出るようになった。エラーが出るようになった前後で日をまたいだだけで、コード自体は変更していなかったのに、だ。 dyld: Library not loaded: @rpath/libswiftAVFound…

Swift iOS アプリで一定時間後に処理をする

Swift にて、JavaScript における setTimeout() 的なことをやる方法。 環境情報 対象 iOS バージョン:v11.3 Xcode:v9.3 (9E145) Swift:v4.1 (swiftlang-902.0.48 clang-902.0.37.1) 処理を遅らせるには DispatchQueue.ayncAfter() 任意の処理を遅らせて実…

Swift iOS アプリで別スレッドで非同期処理を行う

環境情報 対象 iOS バージョン:v11.3 Xcode:v9.3 (9E145) Swift:v4.1 (swiftlang-902.0.48 clang-902.0.37.1) Swift で AVCaptureSession を扱う時とかに、AVCaptureSession.startRunning() の処理が重たいと感じたことがあるかもしれない。 そんな時は、…

Swift iOS アプリで UserDefaults を使ってデータを保存したり読み込んだりする

アプリを開発していて、「最後に選択していた UITabBarItem がどれだったか」といった情報を記録していて、アプリを再起動した時もその情報を参照したくなった。 そこで、アプリ内にちょっとしたデータを保存できる UserDefaults という機能を使って、任意の…

Swift iOS アプリでスプラッシュスクリーンを使わないようにしたり・View Controller の背景色を変えたり

Swift 製の iOS アプリでスプラッシュスクリーンの設定をしたり、スプラッシュスクリーンを使わないようにしたりする方法。その中で、View Controller 全体の背景色の変更方法も紹介。 環境情報 スプラッシュスクリーンの設定 スプラッシュスクリーンをなく…

Swift で Optional な String を Int に変換したい

Swift で Optional な String を Int に変換して利用したかったのだが、すんなりと型変換できなくて調べたのでメモ。 環境情報 書き方 環境情報 対象 iOS バージョン:v11.3 Xcode:v9.3 (9E145) Swift:v4.1 (swiftlang-902.0.48 clang-902.0.37.1) 書き方 …

Swift iOS アプリで Storyboard を使った UITabBar の制御

Storyboard を使って UITabBar を配置し、タブバーのボタンごとに処理をさせてみた。 環境情報 Storyboard で UITabBar を配置する Tab Bar Item を編集する Tab Bar Item ごとに処理を振り分ける 環境情報 対象 iOS バージョン:v11.3 Xcode:v9.3 (9E145) …

Swift iOS アプリでバックグラウンド移行時や復帰時のイベントで任意の処理を行う

iOS アプリでよくある、 バックグラウンド移行時に何か処理をする フォアグラウンド復帰時に何か処理をする を実現する方法のまとめ。 環境情報 用意されているイベントの種類 アプリ全体でイベント定義するには AppDelegate.swift を使う ViewController 内…

Swift iOS アプリで画面の明るさを取得・変更する

Swift 4・iOS 11 で画面の明るさを取得したり、変更したりする方法。 環境情報 明るさの取得方法 明るさの変更方法 環境情報 対象 iOS バージョン:v11.3 Xcode:v9.3 (9E145) Swift:v4.1 (swiftlang-902.0.48 clang-902.0.37.1) 明るさの取得方法 明るさを…

Swift iOS アプリでステータスバーを非表示にする

Swift iOS アプリでステータスバーを非表示にするための設定まとめ。 環境情報 対象 iOS バージョン:v11.3 Xcode:v9.3 (9E145) Swift:v4.1 (swiftlang-902.0.48 clang-902.0.37.1) 起動時にステータスバーを非表示にする Xcode プロジェクトを開き、「Gen…

変数宣言の「let」は数学の基本英語

JavaScript (ES2015) や Swift などの言語で、変数宣言に let という単語を使うが、コレはどこから来てるのかな?と思い調べてみた。 数学の教科書では、定義や説明の冒頭で、 「x を 3とせよ。そうすると。。。」という表現をするときがあるが、 「x を 3 …

iOS アプリで 120fps・240fps のスローモーション動画を撮るための Swift 4 実装

ふと「iOS のカメラアプリでスローモーションが撮れるヤツって極端に少ないな?」と思い、Swift での実装の仕方を調べてみた。 iOS アプリにおけるスローモーション動画撮影に関して解説されている日本語文献は、以下の @shu223 さんの文献ぐらいしか見当た…

Swift で iOS アプリを開発するチュートリアルをやってみる

これまで Cordova を利用したハイブリッドアプリとしての iOS アプリは開発してきたが、Objective-C や Swift を書いて iOS アプリを作ったことがなかった。 そこで、Swift を使った iOS アプリ開発の初歩の初歩をやってみようと思う。 ベースとなる記事は以…

Xcode と Swift のバージョンの確認方法

iOS アプリ開発で使用する Swift 言語。バージョンアップにより破壊的な変更が目立つので、使用している Swift のバージョンは確認しておきたい。 Swift は MacOS 端末にインストールしている Xcode 内に含まれている。コマンドラインから以下のように叩いて…