トモヨ

2児ママさんエンジニア。 iOSアプリ開発をメインに6年半やっています。 誰でもiPh…

トモヨ

2児ママさんエンジニア。 iOSアプリ開発をメインに6年半やっています。 誰でもiPhoneアプリ開発ができるようにフォローアップするのが夢🌏

最近の記事

  • 固定された記事

自己紹介

こんにちは。ママさんエンジニアのトモヨです。 経歴 1991年生まれ、栃木県出身 高校生の時に放送されていたドラマ「ブラッディ・マンデイ」を見てパソコンの使い方に憧れ、大学にて情報系の学科に進み勉強。 仕事では2014年からiOSアプリを作成。とあるアプリの初回リリースから関わり中。 またweb開発、Android開発も少しやっています。 現在は2児の母。育休中です。 やっていること 初めてiOS開発をする方へ向けた、開発動画を作成中です。 Twitterでは日々の

    • UIViewRepresentableを外部から更新したいときに困った

      おはようございます。ママさんエンジニアのトモヨです。 現在、SwiftUIで地図を用いたアプリを作成中ですが、表示中の領域の距離を画面に表示する方法に困ったことがあったので記載します。 環境Xcode13.3 Swift5 やりたいこと画面に表示されている地図の東西の距離を表示する ズームイン、ズームアウトでリアルタイムで反映させる。 クラス構成MapView ・・・delegate通知を受け取る。画面端から端の東西の距離を計算する。viewModelへ距離を通知する

      • MKMapViewで表示領域の東西の距離を取得する

        こんにちは。ママさんエンジニアのトモヨです。 MKMapViewで表示領域の東西の距離を取得してみます。 やりたいこととしては、地図をズームインズームアウトしたときに画面に表示されている東西の距離をリアルタイムで出すことです。 使用環境SwiftUI Xcode13.3 Swift5 記載したコード①MKMapViewのExtensionを作成 extension MKMapView { // 画面上に表示されている東西の距離(m) func regionInM

        • SouceTreeのssh接続で転けた話

          こんにちは。ママさんエンジニアのトモヨです。 普段はターミナルでgitにコミットなどしていますが、 コミットテンプレートなど便利な機能があるので業務使いにはSoucetreeを利用していました。 個人でもSoucetreeを利用しようとしまして、ssh接続でつまづいてしまったので備忘録として残します。 なお大体の人か下記の記事で解消できると思います。 私はターミナルからgitの接続をアクセストークンを使用していたhttps接続だったのでうまくいかなかったようです。 経緯

        • 固定された記事

        自己紹介

          SwiftとUIKitでMVCからMVPのアーキテクチャ変更

          こんにちは。ママさんエンジニアのトモヨです。 お仕事でゴリゴリMVC(Model-View-ViewController)のコードを書いていましたが、どうしてもテストがしづらい。ということでMVVM(Model-View-ViewModel)のコードを目指したいと思います。 ただ一旦MVP(Model-View-Presenter)に置き換えるとスムーズに移行しやすいとお話を聞いたので、 MVPに置き換えるコードを書いてみました。 アプリの内容としてはSwiftUIチュート

          SwiftとUIKitでMVCからMVPのアーキテクチャ変更

          SwiftUI+MVVMの設計で地図を用いた位置情報の表示をしてみる

          こんにちは。ママさんエンジニアのトモヨです。 SwiftUIの練習に、地図と位置情報を用いたアプリを作成してみました。 アプリを起動すると位置情報を取得し現在地を中心に地図を表示するアプリです。画面はこんな感じです。 完成したコードです。 簡単なクラス構成です。 LocationManager・・・CLLocationManagerを持つ。shared ContentView・・・メインのview。Textたちとmapを持つ MapView・・・mapの基本的な操作をする

          SwiftUI+MVVMの設計で地図を用いた位置情報の表示をしてみる

          SwiftUI+MVVMで位置情報を使用した地図表示したい〜アプリの設計からやってみる〜

          こんにちは。ママさんエンジニアのトモヨです。 SwiftUIではMVVMのアーキテクチャとの相性がいいので、地図を利用した現在位置情報を表示してみます。 開発中のコードはこちらです。 こちらのコードを参考にしました 以下が画面です。 request…requestWhenInUseAuthorizationを呼びます start…startUpdatingLocationを呼びます stop…stopUpdatingLocationを呼びます 現在地…ViewModelの

          SwiftUI+MVVMで位置情報を使用した地図表示したい〜アプリの設計からやってみる〜

          iOSアプリで爆速で緯度経度を取得できるようにする

          こんにちは。ママさんエンジニアのトモヨです。 iOSのアプリを自作して一度は位置情報を取得してみたいですよね。 位置情報というのは個人情報ですので、取得するには設定が必要なのです。2ステップあれば取得できますので、実際にやってみましょう。 動画にもまとめてみました。 Xcode Version 13.2.1 (13C100)です。 1.Custom iOS Target Propertiesにパラメータを追加する xcodeprojファイルを開きます Infoタブをタ

          iOSアプリで爆速で緯度経度を取得できるようにする

          Welcome to Xcode! Xcodeの使い方を学ぶ

          こんにちは。ママさんエンジニアのトモヨです。 アプリ作りたい。でもXcodeに拒絶反応が・・・ そんな方でもわかるようにXcodeの使い方をyoutubeに上げてみました。 こんなことできるんだなあという感覚で見ていただければOKです。 わからないことあれば質問など受付中です。

          Welcome to Xcode! Xcodeの使い方を学ぶ

          初めてのiOSアプリ開発に挑戦する

          こんばんは。ママさんエンジニアのトモヨです。 数週間、iOSアプリ開発について投稿してきましたが、旦那から「2行目で読むのやめた」と言われました。そこで旦那にもわかるようなアプリ開発動画をアップロードすることにしました。 まず、第1弾としてXcodeのダウンロードについての動画を作成しました。 iOSのアプリ開発にはXcodeが必須です。容量が大きすぎたり、MacOSのバージョンを上げたりしないといけないので、時間がかかるし面倒です。 この動画を見るとXcodeを使えるよ

          初めてのiOSアプリ開発に挑戦する

          SwiftUIのProperty Wrapperをマスターする②〜クラス型につける〜

          こんにちは。ママさんエンジニアのトモヨです。 再びProperty Wrapper(プロパティラッパー)について見解を深めていきます。 今回はクラスを子のクラスに引き継がせるときに使用する @ObservedObject @StateObject @EnvironmentObject の違いを学びます。実際に書いたコードはこちらです。 下記の記事を参考に学びました。とっても詳しく記載されていてわかりやすかったです。私の記事では気になった部分も含め解説していきます。 h

          SwiftUIのProperty Wrapperをマスターする②〜クラス型につける〜

          SwiftUIのProperty Wrapperをマスターする①〜値型につける〜

          こんにちは。ママさんエンジニアのトモヨです。 Swift UIになってからよくつけるようになった@StateなどのProperty Wrapper(プロパティラッパー)の理解度を深めるために勉強しました。 皆様も書いてみるとわかりやすいので実際にコードを書きながら実践してみると面白いです。 実際に書いたコードはこちらです。 下記の記事を参考に学びました。とっても詳しく記載されていてわかりやすかったです。私の記事では気になった部分も含め解説していきます。 https://

          SwiftUIのProperty Wrapperをマスターする①〜値型につける〜

          SwiftUIでListを実装し設計を学ぶ②

          こんにちは。ママさんエンジニアのトモヨです。 ①ではjsonデータの読み込みからListへの表示を行いました。 データをプロパティにしていましたが、破棄するタイミングを見失ってしまっています。管理として良くないのでAppが生成するときに作成するようにしましょう。 ①データを変更するまずModelData.swiftのfruitsをObservableObjectに準拠したクラスのプロパティに変更します。 // ModelData.swiftfinal class Mod

          SwiftUIでListを実装し設計を学ぶ②

          SwiftUIでListを実装し設計を学ぶ①

          こんにちは。2児ママさんエンジニアのトモヨです。 前回の記事で簡単なList実装を行いましたが、1つのクラスでささっと書いてしまう実装でした。現実のアプリ作成ではデータが複雑であるため、クラス分岐は必須であり、データとViewは分割すべきです。 今回はViewとデータを分割し、管理をApp(一番上の親View)で行う方法を書きたいと思います。 実際に記載したコードはこちらです 果物のリストを一覧にする、そしてタップすると詳細が表示される一般的なListです。 まずはデー

          SwiftUIでListを実装し設計を学ぶ①

          SwiftUIで簡単なListを作る

          おはようございます。ママさんエンジニアのトモヨです。 今まではUITableViewでリストを作成していましたが、SwiftUIで簡単に描けるようになったので、試してみました。 import SwiftUIstruct Colors: Identifiable { var id = UUID() var name: String}struct ColorList: View { private let colors = [ Colors(na

          SwiftUIで簡単なListを作る

          SwiftUIでは値の監視が楽チンになった

          こんにちは。ママさんエンジニアのトモヨです。 UIKitでは表示する情報がが変わった時にViewを更新しなければならない処理が必要でした。 label.text = "変更したよ"view.layoutIfNeeded() //明示的に画面の変更を促す @StateSwiftUIのViewはStruct(構造体)であるため値の保存ができない。 @Stateを付属したプロパティはメモリ管理がフレームワークに移譲される プロパティは常に監視され、変更があった場合に宣言されたV

          SwiftUIでは値の監視が楽チンになった