SwiftでMapタイプの切り替え方
何をやるのか?
簡易的なMapアプリのオプション機能として、mapタイプの切り替えを行う。
前提
MapKitにてMapが設置されていることを前提とする。
Mapの種類
画面 | 定義 | 内容 |
---|---|---|
.mutedStandard | 交通機関 | |
.standard | 標準の地図 | |
.satellite | 航空写真 | |
.hybrid | 航空写真 + ラベル |
|
.satelliteFlyover | 3D Flyover | |
.hybridFlyover | 3D Flyover + ラベル |
実装コード
@IBAction func changeMapButton(_ sender: UIButton) {
if Map.mapType == .standard {
Map.mapType = .satellite
} else if Map.mapType == .satellite{
Map.mapType = .hybrid
} else if Map.mapType == .hybrid{
Map.mapType = .satelliteFlyover
} else if Map.mapType == .satelliteFlyover{
Map.mapType = .hybridFlyover
} else if Map.mapType == .hybridFlyover{
Map.mapType = .mutedStandard
} else {
Map.mapType = .standard
}
}
if文を使い現在のmapTypeと各mapTypeを順番に比較し、もし同じTypeだった場合次のTypeを代入するという簡単なコードになっています。
x-codeのフレームワークのButtonをStoryboardに貼り、それに対応する関数内に記述すれば問題ありません。
最後に
非常に簡単な実装ですが、割と本格的なアプリのように仕上がるので、初学者の方やプログラミングやった事ないけど興味ある人も是非一度実装して、開発の楽しさを体験してみましょう。
Author And Source
この問題について(SwiftでMapタイプの切り替え方), 我々は、より多くの情報をここで見つけました https://qiita.com/Howasuto/items/0f4f5b20de417b1f04dc著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .