Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
IOS应用程序-未接收单击输入_Ios_Swift - Fatal编程技术网

IOS应用程序-未接收单击输入

IOS应用程序-未接收单击输入,ios,swift,Ios,Swift,我正在创建一个应用程序。到目前为止,我已经做了一些基本的工作,删除了主情节提要,并向主viewcontroller添加了一些组件,其中包含约束的代码和制图 基本上没有东西是可点击的,我有无法聚焦的UITextFields和无法点击的按钮 为什么会这样?谢谢 import UIKit import Cartography class LoginViewController: BaseViewController { var identifierField: UITextField!

我正在创建一个应用程序。到目前为止,我已经做了一些基本的工作,删除了主情节提要,并向主viewcontroller添加了一些组件,其中包含约束的代码和制图

基本上没有东西是可点击的,我有无法聚焦的UITextFields和无法点击的按钮

为什么会这样?谢谢

import UIKit
import Cartography

class LoginViewController: BaseViewController {

    var identifierField: UITextField!
    var passwordField: UITextField!

    override func loadUI() {
        view.clipsToBounds = true
        view.backgroundColor = UIColor.colorPrimary()

        let logoText = UILabel()

        let loginView = UIView()

        logoText.attributedText = NSMutableAttributedString.init(string: NSLocalizedString("APP_NAME", comment: ""))
        logoText.font = UIFont.boldSystemFontOfSize(32.0)

        self.view.addSubview(logoText)

        constrain(logoText, self.view) {
            logo, mainView in
            logo.top == mainView.top + 50
            logo.centerX == mainView.centerX
        }

        identifierField = UITextField()
        identifierField.borderStyle = .Line
        identifierField.placeholder = NSLocalizedString("USER_IDENTIFIER_PLACEHOLDER", comment: "")
        identifierField.textColor = UIColor.whiteColor()


        passwordField = UITextField()
        passwordField.borderStyle = .Line
        passwordField.placeholder = NSLocalizedString("PASSWORD_PLACEHOLDER", comment: "")
        passwordField.textColor = UIColor.whiteColor()


        let loginButton = UIButton()
        loginButton.setTitle(NSLocalizedString("LOGIN", comment: ""), forState: .Normal)

        let registrationButton = UIButton()
        registrationButton.setTitle(NSLocalizedString("REGISTER", comment: ""), forState: .Normal)
        registrationButton.addTarget(self, action: #selector(onRegistrationClicked(_:)), forControlEvents: .TouchUpInside)

        loginView.addSubview(identifierField)
        loginView.addSubview(passwordField)
        loginView.addSubview(loginButton)
        loginView.addSubview(registrationButton)

        view.addSubview(loginView)

        constrain(loginView, logoText, self.view) {
            loginView, logo, mainView in

            loginView.top == logo.bottom + 30
            loginView.width == mainView.width - 30
            loginView.centerX == mainView.centerX
        }

        constrain(loginView, identifierField, passwordField, loginButton, registrationButton) {
            loginView, identifierField, passwordField, loginButton, registrationButton in
            identifierField.top == loginView.top + 30
            identifierField.centerX == loginView.centerX
            identifierField.width == loginView.width

            passwordField.top == identifierField.bottom + 20
            passwordField.centerX == loginView.centerX
            passwordField.width == loginView.width

            loginButton.top == passwordField.bottom + 20
            loginButton.centerX == loginView.centerX
            loginButton.width == loginView.width

            registrationButton.top == loginButton.bottom + 20
            registrationButton.centerX == loginView.centerX
            registrationButton.width == loginView.width
        }
    }

    func onRegistrationClicked(sender: UIButton) {
        print("Register clicked")
        navigationController?.pushViewController(RegistrationViewController(), animated: true)
    }
}

使用userInteractionEnabled标志。 e、 例如,在Swift中-

identifierField.userInteractionEnabled = true

在发布问题之前,请先阅读本教程。简而言之,如果您不提供任何代码,我们将无法帮助您。你的意思是抽头,对吗?你不会“点击”iPhone屏幕。没有老鼠。没有光标。我的错,是的,我的意思是点击,但说点击,因为我在使用模拟器。这是一个评论,要求澄清不是一个答案。我不明白。这怎么不是答案?正如您在OP代码中所看到的,此标志缺失/未设置。我要求澄清什么?