“声明仅在文件范围内有效”

时间:2019-05-19 10:42:57

标签: ios swift xcode uitableview

“声明仅在文件范围内有效”错误出现问题 我没有修改除主板以外的任何其他文件。这些都是地方。 (将一个'If!= nil'涂掉)在我使用TextFields的地方。我几乎在尝试所有事情。感谢您的帮助

代码:

  class ViewController: UIViewController {

    //inputs
    @IBOutlet weak var creditValueInput: UITextField! //wartość kredytu, input 
    @IBOutlet weak var procentageInput: UITextField! //oprocentowanie, input
    @IBOutlet weak var yearsInput: UITextField!  //ile lat/miesiecy, input

    @IBOutlet weak var creditOverallOutput: UILabel!
    @IBOutlet weak var creditCalculationOutput: UILabel!



    override func viewDidLoad() {
        super.viewDidLoad()


        self.creditValueInput.delegate = (self as! UITextFieldDelegate)
        self.procentageInput.delegate = (self as! UITextFieldDelegate)
        self.yearsInput.delegate = (self as! UITextFieldDelegate)
        // Do any additional setup after loading the view.
    }

  ......

    override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
      creditValueInput.resignFirstResponder()
      procentageInput.resignFirstResponder()
      yearsInput.resignFirstResponder()

  .....


        extension ViewController: UITextFieldDelegate { !Declaration is only valid at file scope!

            func textFieldShouldReturn(_ textField: UITextField) -> Bool {
                textField.resignFirstResponder()
                return true
            }
        }

    }

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

似乎您是在课堂上编写扩展程序。
虽然扩展名在文件范围内有效,所以您应该剪切扩展名并将其粘贴到类之外。

假设touchesBegan func的括号正确关闭。