だから私はユーザーの場所を保存する必要がありますデータベース内の座標。これまで、データベースを持つviewcontroller.swiftを作成しましたが、座標を出力する別のviewcontrollerにマップキットを接続しています。これらの座標を取得して、最初のViewControllerで作成されたデータベースに保存する方法を考えていました。
座標を出力します
func locationManager(_ manager: CLLocationManager, didUpdateLocations
locations: [CLLocation]) {
if let location = locations.first{
print(location.coordinate)
}
ここに入力する必要があります
let building = buildingField.text?.trimmingCharacters(in:
.whitespacesAndNewlines)
if(building?.isEmpty)!{
print("Building is Empty")
}
if sqlite3_bind_text(stmt, 5, building, -1, nil) != SQLITE_OK{
print("Error binding building")
}
回答:
回答№1は0あなたはいつでも別の変数にアクセスできます現在のVCでそのクラスのインスタンスを作成することにより、ViewController。この場合、SQLite DBコードがMapViewControllerに存在するVCのインスタンスを作成してから、最初のVCの変数に座標を割り当てることができます。渡された座標を使用してデータベースに書き込むなどのタスクを実行する必要がある場合は、NSNotificationCenterクラスを使用できます。これにより、ViewController間の通信が可能になります。以下のリンクは、私が何について話しているかについて、より良いアイデアを提供するはずです。
Ref:
NSNotificationCenterのミディアムチュートリアル