2016-07-29 13 views
0

テキストフィールド内で日付選択ツールを開こうとしています。 次のエラーが表示されます。Swift Error:UITableViewControllerにメンバー "関数名"がありません

Code

コードを次のようにその関数の

import Foundation 
import UIKit 
class tableview : UITableViewController { 
@IBOutlet weak var dateTextField: UITextField! 
@IBAction func textFieldEditing(sender: UITextField) { 

    let datePickerView:UIDatePicker = UIDatePicker()   
    datePickerView.datePickerMode = UIDatePickerMode.Date   
    sender.inputView = datePickerView   
    datePickerView.addTarget(self, action: #selector(UITableViewController.datePickerValueChanged), forControlEvents: UIControlEvents.ValueChanged) 
} 
func datePickerValueChanged(sender:UIDatePicker) { 

    let dateFormatter = NSDateFormatter()   
    dateFormatter.dateStyle = NSDateFormatterStyle.MediumStyle   
    dateFormatter.timeStyle = NSDateFormatterStyle.NoStyle   
    dateTextField.text = dateFormatter.stringFromDate(sender.date) 
    **strong text** 
} 
+0

答えはおそらくここにありますhttp://stackoverflow.com/questions/35658334/how-do-i-resolve-ambiguous-use-of-compile- error-with-swift-selector-syntax/35658335#35658335 – FredericP

答えて

0

クラスtableview(tableview - > TableViewController)に適切な名前を付けます。あなたはTextFieldにIBOutletを使用している場合は、その後のviewDidLoadでinputViewコードを入れ

- あなたはnmae.soここでクラスを記述する必要があり、追加対象の場合

は、クラス名(> TableViewControllerテーブルビュー)です。

下記のコードを試してください。

import Foundation 
    import UIKit 
    class TableViewController : UITableViewController { 

     @IBOutlet weak var dateTextField: UITextField! 

     func viewDidLoad(){ 

      super.viewDidLoad() 
      let datePickerView:UIDatePicker = UIDatePicker() 

      datePickerView.datePickerMode = UIDatePickerMode.Date 

      dateTextField.inputView = datePickerView 

      datePickerView.addTarget(self, action: #selector(TableViewController.datePickerValueChanged), forControlEvents: UIControlEvents.ValueChanged) 
} 

    @IBAction func textFieldEditing(sender: UITextField) { 


    } 
    func datePickerValueChanged(sender:UIDatePicker) { 

     let dateFormatter = NSDateFormatter() 

     dateFormatter.dateStyle = NSDateFormatterStyle.MediumStyle 

     dateFormatter.timeStyle = NSDateFormatterStyle.NoStyle 

     dateTextField.text = dateFormatter.stringFromDate(sender.date) 
     **strong text** 
    } 
+0

ありがとう@Bhoomiは正常に動作しました.. – Joe

0

のような、それを試してみて、

datePickerView.addTarget(self, action: #selector(self.datePickerValueChanged(_:)), forControlEvents: UIControlEvents.ValueChanged) 

あなたが欠落しているPARAM。

希望すると、これが役立ちます。

0
datePickerView.addTarget(self, action: "datePickerValueChanged:", forControlEvents: UIControlEvents.ValueChanged) 

または

datePickerView.addTarget(self, action: #selector(datePickerValueChanged(_:)), forControlEvents: UIControlEvents.ValueChanged) 
関連する問題