【Swift】TableView で長押しを検知してメニューやアラートダイアログを表示する簡単な方法・手順の備忘録【Xcode】
UITableView で長押しを検知したい iOS アプリでリストを長押しした時に何らかの処理をしたいケースは多いと思います。 例えば以下のような用途ですね。 長押しされたリスト ...
【Xcode】「Failed to prepare device for development」のエラーが発生して iPhone 実機ビルド・デバッグができない事象【備忘録】
ある日、いつものようにXcodeで実機ビルドしようとすると、「Failed to prepare device for development」というエラーが発生して、いつまで経っ ...
Macに日本語対応の等幅フォントをインストールして Xcode の行の高さが勝手に変わらないようにする
Xcode でソースコードのコメント等に日本語を入力すると、行の高さが他と変わってしまうことがあります。実装に特に影響はありませんが、少し不自然な見た目になってしまうため、気になる ...
【iOS】applicationWillTerminate、willTerminateNotification がアプリのバックグラウンドで呼ばれない(not working, not called)【Swift】
applicationWillTerminate、willTerminateNotification が呼ばれない アプリキル時のクリーンアップ処理について、以下の記事でまとめさせ ...
【iOS】アプリが終了する直前(タスクキル前)にデータ保存などのクリーンアップ(cleanup)処理を行う【Swift・Xcode】
アプリが終了する直前の処理 iOSアプリの終了直前に、何らかの処理を行いたい場合があるかと思います。例えば・・・ データの保存(キャッシュ)処理何らかの処理を中断してクリーンアップ ...
【iOS】UserDefaults にバックグラウンドスレッドからデータを格納するとメモリリークした【Xcode/Swift】
iOSアプリのメモリリーク アプリでメモリリークが発生すると、メモリの空き容量を食いつぶして、いずれアプリがクラッシュしてしまう危険性があります。 iOSアプリのメモリリークの発生 ...
【iOS】キーボードの開閉に応じて TextField の高さを自動で移動してくれる IQKeyboardManager ライブラリ【Swift】
IQKeyboardManager ライブラリ iOSアプリでは TextField をタップすると、キーボードが下からニュルッと伸びてきます。 この際に、TextField の位 ...
【RxSwift】TextFieldの初期値設定やバリデーションチェック(Scanオペレータ)をViewModelから行う【iOS/Swift】
概要 この記事では、MVVMアーキテクチャでiOSアプリを作る場合において、テキストフィールドを使う際に個人的によく使うユースケースをまとめています。 まず、テキストフィールドを使 ...
【Swift】プロパティラッパ(Property Wrapper)で UserDefaults へのアクセスを簡単にする【Xcode】
iOS エンジニアなら一度は使ったことがあるであろう UserDefaults。 今まで私は以下のようなクラスを作って、UserDefaultsからデータを取り出したり格納したりし ...
【Xcode】スプラッシュ画面(LaunchScreen)で画像が表示されない・画面が真っ黒になる事象の解消【iOS・Swift】
Xcode で iOSアプリ開発をしている際に、スプラッシュ画面が真っ黒になる事象が発生しました。 事象は以下のような感じで、アプリ起動直後に真っ黒な画面が表示されています。 スプ ...
【Swift】enum でIF文によるcase判定やassociated valueの取り出し方、enum同士を比較(==)する方法について【備忘録】
Swift でアプリ開発をしていると、enum は個人的に必須といえるほど頻繁に使用しています。 ねじまき enum なくして私のコーディングライフは存在し得ない...! まだまだ ...
場所通知と行動ログの記録ができるiOSアプリをリリースしました【エリアアラーム】
「エリアアラーム」をリリースしました 未経験からiOSエンジニア(SES)にジョブチェンジして1年半弱が経過しました。 SES企業特有の 客先ガチャ と ...
【Swift】GoogleMapでマーカーがチカチカ点滅・明滅する原因と対処法【Xcode/iOS】
GoogleMapにマーカー(GMSMarker)を複数表示すると、まれに以下のようにチカチカ明滅・点滅する事象に遭遇しました。 今回はその原因と対処法についてまとめています。 チ ...
【Android】BitmapとCanvasでアイコン画像に通知件数バッジをつける【Kotlin】
アプリ内で使用するアイコン画像に、通知件数を表示するようなバッジを付与したいケースがあると思います。 こんな感じです。 上記はAndroidプロジェクトに初めから入っているドロイド ...
RecyclerView の使い方。ドラッグ&ドロップで並び替え、スワイプで削除する。【Android】
RecyclerView の基本的な使い方を確認したので、備忘録として残しています。 ItemTouchHelper を使用して RecyclerView のアイテムをドラッグ ...
【Kotlin】高階関数、ラムダ式・無名関数、クロージャに関する備忘録
Kotlin の関数まわりのことを学習したので、備忘録として残しています。 Kotlin では「関数」も「第一級オブジェクト」 第一級オブジェクトとは、簡単に言うと、Int 型や ...
アプリ導入画面のチュートリアル(ウォークスルー)をViewPagerで実装する【Android】
ユーザにアプリの機能を最初に案内してあげることで、利便性が向上しますし、アプリ自体のPRにも繋がりますよね。 「アプリの取扱説明書」としてよく使われるのは、ウォークスルーと呼ばれる ...
【無料ツール】非デザイナーでも簡単にアプリのプロトタイプをデザインできるAdobe XDの紹介
趣味でアプリやサービスを開発していると、一人でプログラミングとデザインの両方を行うケースが多いかと思います。 しかし、ソースコードを書きながらデザインも一緒に考える、といった方法だ ...
【Android】Firebase Authentication で Googleアカウント認証する手順【アプリ開発】
Firebase Authentication で Googleアカウント認証する手順をまとめました。 ねじまき 「メールアドレスとパスワード」を使用した認証は、Android S ...
【Android】エラー「Default FirebaseApp is not initialized in this process ... Make sure to call FirebaseApp.initializeApp(Context) first.」が出た時に行った対処法【Firebase】
Firebase Authentication を使おうとしたときに、以下のエラーが出ました。 公式ドキュメントに従って、以下のように Android Studio の Fireb ...