【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アプリ開発をしている際に、スプラッシュ画面が真っ黒になる事象が発生しました。 事象は以下のような感じで、アプリ起動直後に真っ黒な画面が表示されています。 スプ ...
WordPress で大なり(>)・小なり(<)記号が自動変換されてエスケープ文字列(>)(<)のまま表示されるのを防ぐ方法
ブログ記事にソースコードを載せる時に、大なり・小なりなどの記号を使用することがよくあります。 WordPress を使用しているのですが、こうした記号がエスケープされた文字列に勝手 ...
【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 型や ...
10 考えて 3 だけ書く?読者を置いてけぼりにしない情報開示を意識する!【星海社座談会の抜粋】
第24回 星海社 FICTIONS 新人賞座談会 にて、受賞作「傭兵と小説家」に対する論評で、以下のようなコメントがありました。 林 台詞の中でキャラクターや設定の補強ができて ...
アプリ導入画面のチュートリアル(ウォークスルー)をViewPagerで実装する【Android】
ユーザにアプリの機能を最初に案内してあげることで、利便性が向上しますし、アプリ自体のPRにも繋がりますよね。 「アプリの取扱説明書」としてよく使われるのは、ウォークスルーと呼ばれる ...