CATEGORY

技術記事

UIViewControllerでSwiftUIのビューを表示する

はじめに みなさんはSwiftUIを使用しているでしょうか。私はまだそこまでちゃんとキャッチアップできておらず、とりあえずはUIKitメインで一部のビューのみSwiftUIにリプレイスしていけば良いかと呑気に考えています。本記事では、UIViewControllerでSwiftUIのビューを表示するために利用できるUIHostingControllerについて説明しています。 UIHostingC […]

iOS15以降でUISearchBarにカスタムフォント(NotoSansJapanese)を指定すると、テキストのベースラインがずれてしまう

はじめに iOS15以降で、UISearchBarのsearchTextField.fontプロパティにNotoSansJapaneseを指定した際に、編集完了するとテキストのベースラインがずれる現象に遭遇したため、原因とその対応についてまとめました。 調べたこと UISearchBarのビュー構造 UIsearchBarのView Hierarchyをデバッグしてみると、テキストが載っているビュ […]

UINavigationControllerによる画面遷移のアニメーションを変更する

UINavigationControllerを使用して画面遷移する際、基本的にはプッシュアニメーションが使用されますが、ある特定の画面に遷移するときのみ画面遷移のアニメーションを変更したいときに使えるコードのメモ📝 以下はUINavigationControllerのカスタムクラスを作成し、画面遷移メソッドをオーバーライドしたやり方です。SearchViewControllerというViewCon […]

カスタムフォントの追加とローカライズ設定の手順【Xcode】

はじめに カスタムフォントの導入とローカライズ設定する機会があり、簡単だったので手順をまとめました。 フォントの追加手順 1. 使用したいフォントの追加 使用したいフォントをXcodeに追加します。(デフォルトで入っている場合は問題ないです)私はGoogleFonts をよく利用しています。デザイナーさんもよく使っていると聞いたのと、オープンソースのフォントを簡単に検索できて、サポートしている言語 […]

ネットワークの速度をターミナルから確認する

遅ばせながら最近やっとmacOSをMontereyにアップデートしました。macOS Monterey (macOS 12~)でネットワークの応答速度を測定するコマンドラインツールが追加されたと聞いたので試してみました。これまでは速度を測定するサイトをいちいち開いて確認していたので便利ですね。 ターミナルを開いて以下のコマンドでネットワークの応答速度をチェックできます。 アップロードとダウンロード […]

画像をカメラロールに保存する【Swift5】

はじめに 画像をiPhoneの”写真”アプリのカメラロールに保存する実装をしたいときがあったのですが、単純にUIImageを保存するとEXIF情報や位置情報が失われてしまいました。 本記事では、まず単純にUIImageをカメラロールに保存する手順を説明し、次にEXIF情報などを保持したまま画像を保存する手順について説明しています。 UIImageの保存 カメラロールにUII […]

【iOS】カメラやBluetoothなどのアクセス許可設定を変更するとアプリが終了する

はじめに iOSアプリでは、カメラやBluetoothなどを使用するときにはシステムへのアクセス許可が必要となります。 こちらをiPhoneやiPadの設定アプリで変更すると、対象のアプリがクラッシュしてしまい焦ったことがあったので、こちらで共有しておこうと思います。 iOSの仕様 結論から言いますと、アプリがバックグラウンドで起動中に、iPhoneの設定アプリでプライバシーなアクセス許可設定(写 […]