AppleサポートAppおよびYouTubeチャンネルのお知らせ

* iOS向けAppleサポートAppのバージョン5.6.1が公開されました。

YouTube - Apple Japanチャンネルで有用なヒントや使い方を配信中です。

コミュニティでの投票方法と通知設定

コミュニティでの投票方法や通知の設定方法に関する記事を公開しました。

Apple Account(Apple ID)の不正利用を確認する方法

Apple Accountに関するよくある質問についてはこちらのページを、また不正利用を確認する方法についてはこちらのドキュメントをご参照ください。

しばらく返答が寄せられていないようです。 再度ディスカッションを開始するには、新たに質問してください。

swiftUIでのナビソフト開発でアドバイス希望してます。

最近iPhoneソフト開発を始めたaround seventyの個人タクシー運転手です。作りたいナビソフトが有るのでただいまいろんな教則本を買って勉強中です。環境はmac OS 13.2.1Ventura、XcodeはVersion14.3.1(14E300c)です。SwiftUIで行っています。


作りたいソフトはタクシー運転手の為のセカンド(サポート)ナビです。


個人タクシーの車両には必ず車に設置されたナビが有るのですが、このナビは私の”個人タクシー”という環境では必ずNorth UPにしてお客さんが自分の乗ったタクシーが今ドコを走っているのか?を表示するサービスとして機能しています。でも必ずしもお客さんだけの環境でもありません。お客さんが降りた時、自分の車両が何処にいて?どっちの方向を向いているか?を判断するのに単に視線を本ナビに動かすだけで判断できるからです。


私はハンドルの左は車両設置のナビ、右側にiPhoneのYahooナビを進行方向UPにしています。そういう環境では、右側にあるiphoneのヤフーカーナビの目的地検索機能は不要、必ず画面の3分の1は不要な表示が出るので、これも不要、2タップして全画面表示にして使用しています。


表示画面を出来るだけ広くしたいので、自分専用のナビを自分で作れないか?と思いまして、iPhoneのナビソフト開発を勉強しつつ開始した訳です。


教則本の添付のコードに希望のコードが有ったので、早速buildし自分のiPhoneに実機転送して試してみました。おおまか希望通りに動くのですが2つほど気に入らない点があります。それは、


1.ナビゲーション画面が進行方向UPではなく、North UPである

2.自分のiPhoneの設定デフォルトであるロック時間に拘束されいつのまにかブラックアウトしている

の2点です。


教則本にあるcodeは、そのままC&Pするのも気が引けるので、言葉で解説(.swiftファイル2つ)、

  • 1.ContentView.swift>LocationManagerを変数managerに代入>MapTrackingModeを変数trackingModeに代入>ViewでMap
  • 2.LocationManager.swift >classでLocationManagerを宣言する>NSObject, ObservableObject, CLLocationManagerDelgate>LocationManager宣言>変数regionにPublish>override初期化>スーパークラスのイニシャライザー実行>領域の更新(デリゲートメソッド)>locationManager宣言>Locationの最後の要素に対して更新


となっています。


ココで先ほどのプログラムを「進行方向UP」へ改変をしたいのですが、ContentView.swiftに追加するCode、LocationManager.swiftに追加するCodeに対し、何かアドバイスをいただけないでしょうか?

一応、https://jp-seemore.com/app/15700/#toc18のサイトの解説を参考にトライ中ですが、どのコードをどのファイルのどの位置に組み込めばいいのか?がよく分かりません。また、上記の解説があるサイトが有りましたらリンクを教えて頂きたいです。


一応、実際に実機転送したiPhoneのナビのスクリーンショットをココに添付します。

青い●の位置にたしかに私、待機していますのでNorth UPではちゃんと動いています。ちゃんと自分の位置を移動に伴いそのまま追随してくれています。よろしくお願いします。



iPhone 8

投稿日 2023/11/27 09:01

返信

返信はありません。

swiftUIでのナビソフト開発でアドバイス希望してます。

Apple サポートコミュニティへようこそ
Apple ユーザ同士でお使いの製品について助け合うフォーラムです。Apple Account を使ってご参加ください。