0
分割ビュー内に複数のビューコントローラがあります。私はクライアントビューの2つのテキストフィールドを持っています - "latitude" & "経度"私は実際にUIViewコントローラにデータを逆方向に転送しようとしています
マップビューなどを実行するView Controllerに移動します。現在の位置の緯度と経度を投稿します。これで私は、プロトコルを持っていると私は正常に動作するよう、次のコードを使用している:私は次のことを持っているが、それはデータの転送/フェッチしていないように見える戻るclientViewControllerで
protocol MappingViewControllerDelegate {
func transferData(latitudeTfr: String!, longitudeTfr: String!)
}
class MappingViewController: UIViewController, CLLocationManagerDelegate, `MKMapViewDelegate, UITextFieldDelegate {`
var delegate: MappingViewControllerDelegate?
var latitudeTfr: String!
var longitudeTfr: String!
override func viewWillDisappear(animated: Bool) {
super.viewWillDisappear(animated)
latitudeTfr = latitudeLabel.text!
longitudeTfr = longitudeLabel.text!
self.delegate?.transferData(latitudeTfr!, longitudeTfr: longitudeTfr!)
print("Longitude is: \(longitudeTfr)")
print("Latitude is: \(latitudeTfr)")
}
を:
class ClientViewController: UIViewController, UITextFieldDelegate, MappingViewControllerDelegate {
func transferData(latitudeTfr: String!, longitudeTfr: String!) {
self.latitudeText.text = "\(latitudeTfr!)"
self.longitudeText.text = "\(longitudeTfr!)"
print("\(latitudeTfr!)")
}
clientViewControllerのどこかに何か不足していて、私が間違っていることを理解できません。どんな助けでも大歓迎です。
種類は、あなたが準拠しているのViewControllerにあなたのプロトコルのデリゲートを割り当てる必要がウェイン
私はあなたがデリゲートを設定するのを忘れたと思います... – Sweeper