iOS
開発中のアプリで端末の機種を判定したかったのですが、 UIDevice.current.model は iPhone や iPod touch としか返さないため、もう少し詳細な情報を取得する方法を調べました。 今回のコードにより iPhone12,3 等の形式の識別子を取得することが出来ます。…
たまにですが、設定アプリに「ユーザーID」といった項目名でUUIDを表示しているアプリを見かけます。 開発中のアプリでも端末識別用のUUIDを設定アプリに表示する必要があったため方法を調べてみたのですが、 予め決まっている固定値を表示する方法がほとん…
TestFlightにアプリをアップロードした際に表示されるこの質問、fastlaneでアップロードする際にも表示され、自動でアプリが配信されなくなってしまうのですが、予めプロジェクト設定を追加しておくことで表示されないようにすることが可能です。 設定方法 I…
アプリのコンテンツをメールやSNS等の外部サービスに渡す共有メニューをSwiftUIで表示する方法です。 共有メニュー表示用Viewの定義 UIKitではUIActivityViewControllerを使用して表示するこの共有メニューですが、現状SwiftUIで特に専用のViewがある訳では…
iOS13ではSystem ImageとしてSF Symbolsというものが追加され、UIKitのUIImageやSwiftUIのImageから使用出来るようになりました。 使用方法 それぞれ、以下のようにして名前を指定して表示します。 UIKit(UIImage) UIImage(systemName: "xxx") SwiftUI(Image…
まずは透明化/解除のExtensionを作成 public extension UINavigationBar { /// ナビゲーションバーを透明化する func enableTransparency() { setBackgroundImage(UIImage(), for: .default) shadowImage = UIImage() } /// ナビゲーションバーを透明化を解…
256bitに限った話ではないのですが、大きめの乱数を生成する方法です。 乱数の生成は以下のように様々な方法がありますが、 RandomNumberGenerator arc4random() arc4random_uniform() rand() random() いずれにしても最大で64bitまでしか生成出来ないようで…
UITextViewにはデフォルトで若干のパディングが含まれています。このままだとレイアウトに支障をきたす場合もあるので、パディングを削除する方法を記載します。 コードで削除する 以下のようなUITextViewを定義したとして、 @IBOutlet weak var textView: U…
環境 macOS: 10.14.2(Mojave) Xcode: 10.1(10B61) fastlane: 2.112.0 Ruby: 2.5.3 laneの定義 gymアクション(もしくはbuild_ios_appアクション)でビルドやパッケージングに関する処理が出来ます。lane名はここではadhocとします。 gym - fastlane docs また…
simctlコマンドを使用します。 スクリーンショット $ xcrun simctl io booted screenshot xxx.png 画面の録画 $ xcrun simctl io booted recordVideo xxx.mov Ctrl+cで録画終了。 デバイスの指定 上記コマンド中のbootedの部分は起動中のデバイスを表す特殊…
Xcode10でStoryboard上のUIButtonからコード上にConnection(Outlet/Action)を作成する際、挿入位置によってデフォルトで選択済のConnectionが変わるようになっていました。(以前は"Outlet"固定だったかと思います) 具体的には、コードのViewControllerクラス…
iOSにおける文字列のサイズ取得方法のメモです。 Viewの横幅と比較して、1行に何文字表示出来るか等の計算が出来たりします。 文字列のサイズ取得 NSStringクラスにサイズが取得出来るメソッドがあるので、こちらを使います。 size(withAttributes:) UIFont…
Contacts Frameworkを使用し、標準の連絡先アプリに登録されている連絡先一覧を取得する方法についてまとめてみます。 Contacts Framework公式ページ サンプルコードは以下に置いています。 https://github.com/kurozu10344/ContactsSample 検証環境 iOS 11 …
UINavigationControllerを使用したPush遷移の際のアニメーションをPop風(左から右へ)にする必要があったので、実現方法についてメモしておきます。 検証環境 Xcode9.2 iOS11 Simulator 大まかな流れ Animatorの作成(UIViewControllerAnimatedTransitioningプ…