技術記事

tableHeaderView, tableFooterViewを正しくレイアウトする

UITableViewを使用する際に、tableHeaderViewやtableFooterViewを利用してヘッダーやフッターを実装したい場面があると思います。先日、tableHeaderViewとtableFooterViewを使用した際に、オートレイアウトで設定するとレイアウトが崩れてしまい少し手こずったため、正しくレイアウトするポイントを残しておこうと思いました。 この記事では、table […]

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

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

prepareForReuse()に書くべきコード

iOSアプリ開発において、UITableViewCellやUICollectionViewCellは頻繁に使用されますが、セルの再利用って難しいですよね。先日、セルの初期化タイミングってこれで良いのだっけと思いつつ、なんとなくprepareForReuse()メソッド内にセルの初期化処理を書いていました。 「とりあえずprepareForReuse()に初期化処理を書いとけば良いや」 と私と同じよ […]

グルめし

このアプリについて 飲食店のルーレット自動作成アプリです。周辺地域、もしくは検索した地域周辺の飲食点をマップで表示し、ルーレットを作成できます。 アプリのインストールはこちら 開発経緯 iOSアプリ開発を学習し始めたときにその過程で作成し、初めてリリースしたアプリです。 学生時代に、毎日友達とお店を決めるのにルーレットを作成していたので、自分が学生時代にこんなのあったらいいなを形にしました。まだま […]

フォントをXcodeに追加してローカライズ設定をする手順

はじめに フォントの導入とローカライズ設定方法についてまとめました。 フォントをXcodeに追加する 使用したいフォントをXcodeに追加します。(デフォルトで入っている場合は問題ないです)GoogleFonts をよく利用しています。デザイナーさんもよく使っているという話を聞いたのと、オープンソースのフォントを簡単に検索できて、サポートしている言語も一覧で分かるので使いやすいです。ダウンロードし […]

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

macOSをMontereyにアップデートしました。macOS Monterey (macOS 12~)でネットワークの応答速度を測定するコマンドラインツールが追加されたと聞いたので試してみました。これまでは速度を測定するサイトをいちいち開いて確認していたので、非常に嬉しいです。 ターミナルを開いて以下のコマンドでネットワークの応答速度をチェックできます。 アップロードとダウンロードの通信速度、応 […]

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

はじめに 本記事では、画像をiPhoneの”写真”アプリのカメラロールに保存する方法を紹介します。単純にUIImageを保存する方法から、exif情報などを保持したまま保存する手順についても説明します。 UIImageの保存 カメラロールにUIImageを保存するシンプルな方法は、UIImageWriteToSavedPhotosAlbum(_:_:_:_:)を使用すること […]

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

iOSの仕様 アプリがバックグラウンドで起動中に、iPhoneの設定アプリでアプリのプライバシーなアクセス許可設定(写真やBluetoothなど)を変更すると、iOSがアプリを強制終了させるという仕様があります。 iOSアプリで写真やBluetoothなどへアクセスしようとすると、システムからアクセス許可を求められるアレです。info.plistファイルに’Privacy’ […]