2016-04-08 2 views
0

私はiOSを初めて使い、この要件に苦しんでいます。segueアクションを引き起こしたボタンを見つけますか?

私は2つの読み取り専用UITextFieldと2つのボタンを持つビューを持っています。テキストフィールドには、開始位置と終了位置が格納されます。いずれかのボタンをクリックすると、TableViewのリストが表示されます。基本的に、ユーザーはテーブルビューに移動するボタンをクリックします。彼らは、彼らが元のビューに戻ってそれらを元に戻し、元のボタンの隣にあるテキストフィールドこのようにして、開始位置と終了位置の両方を選択するために同じビューを使用することができます....もちろん、両方の場所で同じ場所を選択しないようにするロジックもあります。例:ホームからホームへ

このコードをお持ちの場合...

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject!) { 
    if (segue.identifier == "segueChoiceMade") { 
     let passingData = segue.destinationViewController as! LocationChoiceViewController; 

     passingData.mileageToPass = mileageToPass 
     passingData.fuelAmountToPass = fuelAmountToPass 
     passingData.senderToPass = sender.identifier 
    } 
} 

私はsender.identifierボタンのIDを持っているだろうと期待していたが、私が得るすべては「一部」です....

がどのようにIこれですそれについて行く必要がありますか?ボタンのアイデンティティはどうやって取得できますか?ありがとう。

答えて

0

senderパラメータは、探しているパラメータです。
送信者のストーリーボードでセグを設定すると、セグを引き起こしたオブジェクトが常に見つかります。
シグをトリガーしたボタンを検出できるのであれば、簡単にできます。差出人以来

@IBOutlet weak var myButton: UIButton! 
    override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject!) { 
     if (segue.identifier == "segueChoiceMade") { 
      let passingData = segue.destinationViewController as! LocationChoiceViewController 
      if sender === myButton { 

あなたはアイデンティティ===演算子を使用して、オブジェクトの一つへの参照に対してそれをチェックすることができるオブジェクトです。または、as?演算子を使用してキャストして、その必要があると思わないと判断し、内部プロパティの一部を確認してください。

関連する問題