概要 作ったもの 環境 SwiftUIでの実装 UIKit LocalAuthenticationと組み合わせてみる まとめ 概要 金融系のアプリなどでよくある実装かと思いますが、アプリでbackgroundを検知した時に画面をマスクする方法について紹介したいと思います。 作ったもの 環境…
概要 環境 原因と対応方法 回避策 まとめ 概要 「Library not found for - XXXX...」のエラーは基本的にはLibrary Search PathsのPathが正しくなかったり、重複している場合に起こるエラーですが、Apple silicon起因でも表示されましたので、以下当てはまる…
概要 環境 前置き ドキュメントを見る 実際に検証してみる 検証の様子 まとめ 概要 OpenAI APIの中でChatGPTが利用できるので、そちらを利用してAIとチャットできるiOSアプリを試しに作ってみました。その中で作り方やpromptの調整による変化などを簡単に検…
概要 環境 aws-sdk-ios-spmを導入する Kinesisにデータを送ってみる まとめ 概要 本題の通りaws-sdk-ios-spmを使用してKinesisにデータを送る方法を紹介したいと思います。 spmと付いているのでお察しの方もいると思いますが今回はSwift Package Managerにて…
概要 環境 LocalAuthentication 試してみる Privacy - Face ID Usage Descriptionを追加 ViewやClassの実装 解説 まとめ 概要 ロック画面の解除に普段何気なく使用しているFace IDやTouch IDですが、セキュリティレベルを高めるのはもちろん、ユーザーがIDや…
概要 研修前の理解 受講初日 受講2日目 スクラムマスターとは スクラムマスターのその先 まとめ 概要 先日、認定スクラムトレーナーであるJoe Justiceさんの認定スクラムマスターを受講したので、研修内容を整理しつつ、備忘録として記事にしたいと思います…
概要 環境 前提 resizableでframeサイズを反映させる スケールやアスペクト比を調整する 元のアスペクト比を保ちつつ、frame内に収める まとめ 概要 SwiftUIでImageのサイズを変更する際にframeでwidth及びheightを指定するだけでは変更できません。resizabl…
本記事は NRIネットコム Advent Calendar 2022 1日目の記事です。 本記事 ▶▶ 2日目 概要 環境 作成するUI アドベントカレンダーとは アドベントカレンダーアプリ アイコンの準備 UIを実装していく Stackを使用してアイコンを任意の位置に配置する overlay…
概要 環境 sheetPresentationControllerの使用方法 customで任意の高さのモーダルを表示する まとめ 概要 iOS16からUIViewControllerで使用できるモーダルがcustomを使用することで任意の高さに設定できるようになりました。 今回は試しにSwiftUIのViewを呼…
概要 環境 実装 値を渡す まとめ 概要 SwiftUIのViewでUIViewControllerやUIViewを呼び出す方法はUIViewControllerRepresentableやUIViewRepresentableを使用することで可能です。 逆にUIViewControllerの中でSwiftUIのViewを表示するにはUIHostingControlle…
概要 環境 実装方法 まとめ 概要 NavigationViewやNavigationStackのタイトルや背景色を変更する方法をご紹介します。 環境 この記事は以下のバージョン環境のもと作成されたものです。 【Xcode】14.1 【iOS】16.1 【macOS】Monterey バージョン 12.6 実装方…
概要 環境 UIViewControllerRepresentableとUIViewRepresentable UIKit側の実装 SwiftUI側の実装 UIViewControllerRepresentableを使用して呼び出す まとめ 概要 UIKitで作成したUIViewControllerやUIViewをUIViewControllerRepresentableやUIViewRepresenta…
概要 環境 translatesAutoresizingMaskIntoConstraintsをfalseにする SwiftUIのプレビューを使用する まとめ 概要 Auto Layoutとはビューに設定された制約に基づいて、ビュー階層内のすべてのビューのサイズと位置を動的に計算するレイアウトでその制約など…
概要 環境 iOS16未満での実装 iOS16からの実装 OS毎に表示制御を行う Listの場合 まとめ 概要 iOS16未満ではUITextView.appearance().backgroundColorを使用することでTextEditorやListなどの背景色を変更する事ができました。 しかしiOS16では上記の実装で…
概要 環境 Combineでの実装 onChangeでの実装 まとめ 概要 テキストの文字数をリアルタイムでカウントして表示したり、入力文字数の制限をする方法についてCombineフレームワークとonChangeを使用した手法をそれぞれ紹介したいと思います。 環境 この記事は…
概要 環境 シミュレーターの追加 確認 まとめ 概要 常に最新のOSバージョンで開発できればいいものですが、そんな事はまずなく、検証する際もそのOSに対応した環境で行うために、任意のバージョンのシミュレーターが欲しくなると思います。 そんな時は以下の…
概要 環境 check spelling while typingの設定方法 任意のキーワードは除外 除外したキーワードの管理 まとめ 概要 いきなりですがXcodeのcheck spelling while typingは使用していますか? こちら使用するとスペルチェックをエディタに任せる事ができます。…
概要 環境 TabViewの基本的な使い方 Tabの背景色やアイコンに色を付ける方法 Onboardingを作成 まとめ 概要 TabViewを使って以下の様なアプリ起動時に表示するOnboardingを作成してみたいと思います! 環境 この記事は以下のバージョン環境のもと作成された…
概要 環境 BLEを使用するために押さえておきたい知識 ペリフェラル セントラル アドバタイズ 接続までの流れを整理 実装 ペリフェラルの実装 NimBLEDeviceをESP32で使用する ペリフェラルのサンプルコード セントラル側の実装 CoreBluetoothを使用したサンプ…
概要 環境 準備するもの(物理) ESP32とは iPhone®とESP32をBLEで接続する Arduino IDEをダウンロード ESP32のボードを追加 スケッチ例からサンプルコード起動 nRF Connect for Mobileを使用してBLE接続する まとめ 概要 iPhone®とESP32をBLEで接続し、制御…
概要 環境 きっかけ 追加、修正機能 Pixelのコンポーネント作成 タップ動作でPixelを選択する 任意の色を着色できる おまけ まとめ 概要 【SwiftUI】ForEachでPixel Artアプリを作ってみるの続きとなります。 今回はColorPickerを使用して任意の色を選択して…
概要 SwiftUIではForEachを使用することでViewを繰り返し処理で生成することができます。 そんなForEachの使い方をご紹介しつつ今回は以下のようにドット絵が描けるPixel Artアプリを作ってみたいと思います。 環境 この記事は以下のバージョン環境のもと作…
概要 環境 参考サンプル 範囲選択から値をリスト表示する 特定のグラフを選択した時に値を抽出して表示する まとめ 概要 ChartにGeometryReaderを使用することで以下のようにタップなどの動作で特定のグラフの値を抽出したり、範囲選択して、値をリスト表示…
概要 環境 サイズ、背景色、枠線の制御 XやY軸に対してラベルの表示制御 グラフに対してグリッド線や目盛り線の表示制御 まとめ 概要 Chartで作成したグラフに対して背景色をつけたり、X軸やY軸のグリッドやラベルの表示を制御する方法を紹介します。 環境 …
概要 環境 chartXScale、chartYScale includesZero reversed グラフ内に余白を追加する まとめ 概要 Chartでグラフを作成した際に縦軸、もしくは横軸に基準となる値が自動で調整されて表示されます。 今記事は各軸に表示される値の範囲を指定する方法の紹介…
概要 はじめに Chart MarkとProperty foregroundStyle annotation Markの種類 AreaMark RuleMark LineMark PointMark RectangleMark BarMark 最後に 参考記事 概要 iOS16から使用できるようになったChartsフレームワークについて使用方法と大まかな概要を説…
概要 サイズの取得方法 座標の取得方法 global local min、mid、max 使用事例 最後に 概要 GeometryReaderはSwiftUIで使用できるContainer Viewで、Viewのサイズや座標を取得することができます。 Viewのサイズや座標を取得できるようになると以下のような動…
概要 Arduinoについて(おさらい) モーターを動かしてみる 最後に 概要 前回の記事では簡単にArduinoを始める環境構築について書きましたので、今回はArduinoでモーターを制御してみました! これから始める人などに参考になれば幸いです。 Arduinoについて(…
https://www.apple.com/jp/apple-events/ 概要 Apple Event Apple Watch iPhone 新機能についておさらい ロック画面のWidget SwiftUIの新しいAPI in-app purchase Use SwiftUI with UIKit App Clips Concurrency Dynamic Island 最後に 概要 先日のApple Eve…
概要 作成前に確認すること Passの種類を把握する Passのデザイン 共通したレイアウト 搭乗券 クーポン券 イベントのチケット 店舗カード 汎用パス(その他の一般的なパス) 作成 最後に 概要 今回は前回の「Apple WalletやPassについて調査し、Passを作って…
概要 Arduinoとは VSCodeでArduino開発 PlatformIO LEDの点灯 コード 配線 実行 最後に 概要 今回はPlatformIOを利用したArduinoの開発環境を構築してみました。 また開発環境の構築後、LED点灯まで行いましたので、その流れをご紹介したいと思います! Ardu…
概要 Apple WalletやPassについて調査編 WalletとPassの違い Passでできること Passの作成編 Pass作成のおおまかな流れ 証明書周り作成 passファイル作成 signpass取得 Passの生成 最後に 概要 今回は以前から気になっていたApple WalletやPassについて調査…
記事の概要 EventKitとは 実装の流れ info.plistで設定する カレンダーへアクセスすることの許可を要求する カレンダーへ予定を追加する サンプル全体 最後に 記事の概要 今回はEventKitを使用してiPhoneの標準カレンダーへ予定やTODOを追加してみたいと思い…
記事の概要 通知について 実装方法 手順 通知の許可を求める 任意のタイミングで許可を得るアラートを表示したい場合 通知処理 フォアグラウンドで通知したい! おまけ 最後に 記事の概要 今回の記事で紹介させていただく通知処理は以下のようなものです。 …
前回の記事ではFirebase Apple SDK 9.0.0でasync/awaitに対応したのでAuthenticationで試してみた記事を書きましたが 今回はFirestoreで試してみました。 前回の記事 tech.nri-net.com 概要: 今回試した事 前提知識: Firestoreとは 実践: Firestore 追加 更…
入社して2ヶ月が経ちFlutterやKotlinと色んなモバイルの技術に触れさせていただいています岡です! いよいよ今週の月曜日からWWDC2022が始まり様々な情報が公開されています! この時期だけは睡眠時間削ってでもキャッチアップしたくなります^^ 個人的にSwif…
SwiftUIではforegroundColorを使用する事で色を変更する事ができますが、Assetsに用意したImageはrenderingModeでtemplateを指定しないとforegroundColorで指定した色を反映させる事ができません。 今回はrenderingModeのtemplateで色んなファイル形式の違う…
Google I/O 2022でFirebase Apple SDK 9.0.0の発表、リリースがされました。 メジャーアップデートにより正式にSwiftへ対応したとの事で色々便利になっているらしいのでまずはよく使う認証機能にあたる「Firebase Authentication」を試してみました。 Google…
本記事は モバイルアプリWeek 1日目の記事です。 イベント告知 ▶▶ 本記事 ▶▶ 2日目 SwiftでSlackに投稿するための準備から、実際に投稿してみる所までを試作してみたのでまとめました! 準備:Slack appを作成する WebhookのURLを取得する 実装:コードを…
前置き 先日WindowsでFlutterを使用する為に環境を構築しましたokaです! 少しハマった所もありましたのでハマったポイントも含め、備忘録として構築方法をまとめてみました!! Contents 環境 Flutter SDKをインストールする ダウンロード zipファイルの展…
前置き 入社して一カ月が経とうとしているokaです! 毎日刺激的で学びが多く、楽しく過ごしています! 現在チーム内では今後Flutterによる開発を検討しています。 個人開発では好きなものを好きなように選定して開発していましたが、チームで導入をしていく…
はじめまして、2022年度キャリア採用でiOSエンジニアとして入社させていただきました岡です! この時期は新しい年度が始まり、新しい環境で新しい事にチャレンジしてる方が多い時期ではないでしょうか? 自分もその中の一人です! そこで今回は10年間教員を…