内の別の関数内で呼んでいる関数から定数を使用しますピッカーコントローラ。は、私は別の関数から変数にアクセスしようとしているが、これはイメージであるため、パラメータが適切であろうと、私は定数を渡すことはないと思うスウィフト
//Get metadata from a photo. Save location (latitude/longitude) to a dictionary.
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {
// Add delegate
let picker = UIImagePickerController()
picker.delegate = self
if let URL = info[UIImagePickerControllerReferenceURL] as? URL {
print("We got the URL as \(URL)")
let opts = PHFetchOptions()
opts.fetchLimit = 1
let assets = PHAsset.fetchAssets(withALAssetURLs: [URL], options: opts)
for assetIndex in 0..<assets.count {
var asset = assets[assetIndex]
let opts = PHFetchOptions()
opts.fetchLimit = 1
let assets = PHAsset.fetchAssets(withALAssetURLs: [URL], options: opts)
for assetIndex in 0..<assets.count {
var asset = assets[assetIndex]
var location = String(describing: asset.location!)
var photoLatitude = asset.location?.coordinate.latitude
var photoLongitude = asset.location?.coordinate.longitude
//var coords : [String: Double] = ["longitude": photo_longitude!, "latitude": photo_latitude!]
PHAsset.fetchAssets(withALAssetURLs: [URL], options: nil)
dismiss(animated:true, completion: nil)
print(photoLatitude)
print(photoLongitude)
getAddressFromGoogle(lat: photoLatitude!, long: photoLongitude!)
}
}
}
}
そして、ここで私は必要な定数含む関数です:
// Create function to get an address from Google from latitude/longitude.
func getAddressFromGoogle(lat: Double, long: Double) {
let numberFormatter = NumberFormatter()
numberFormatter.maximumFractionDigits = 6
let textLat = numberFormatter.string(from: NSNumber(value: lat)), textLong = numberFormatter.string(from: NSNumber(value: long))
let completeUrl = baseUrl + textLat! + "," + textLong! + urlSuffix
Alamofire.request(completeUrl, method: .get).responseJSON {
response in
if response.result.isSuccess {
print("Successful request.")
var locationData = JSON(response.result.value!)
// Parse the result for "formatted_address" inside of the entire results block
let streetAddress = locationData["results", 0, "formatted_address"]
print(streetAddress)
print(completeUrl)
}
else {
print("Error \(response.result.error)")
}
}
}
私は私のイメージピッカーコントローラにstreetAddress定数へのアクセス権を与えたいとここに私はに定数を渡したいコードです。 Swiftでこれにアプローチする最善の方法は何ですか?
あなたは、私が完成 'にパラメータを変更しなければならなかった、この目的のために – 3stud1ant3