是否可以在swift中以编程方式按下回车键?

问题描述 投票:0回答:1

我正在用swift做打字游戏,但有一些问题。首先这是我的代码,例如当你打 "사랑 "的过程是这样的。

if let input = textField.text{
 //비교를 위한 글자 분해한 배열
            let whatYouHaveToWrite = Text.init().textArray[a]
            let whatYouAlreadyWrite = input

            let attr = NSMutableAttributedString(string: viewLabel.text!)

            for i in 0...Array(whatYouHaveToWrite).count-1{

                    //한글자 맞았는지 인식하는 것
                if i <= Array(whatYouAlreadyWrite).count-1{
                    if Array(String(whatYouAlreadyWrite))[i] == Array(whatYouHaveToWrite)[i]{
                        attr.addAttribute(.foregroundColor, value: UIColor.systemBlue, range: NSRange(location:i,length:1))
                        ENTER()
                    }

                    //한글자 틀렸는지 인식하는 것
                    if i>0 {
                        if Array(String(whatYouAlreadyWrite))[i-1] != Array(whatYouHaveToWrite)[i-1]{
                            attr.addAttribute(.foregroundColor, value: UIColor.systemRed, range: NSRange(location:i-1,length:1))
                        }
                    }
                } else{ break }
            }
}

例如,当你输入 "사랑 "的过程是这样的。"ㅅ" -> "사" -> "살" -> "사랑",如果我输入 "사",你可以看到在我的代码中,"사 "的颜色被改变为蓝色,但问题是,当你输入 "살",以便输入 "사랑"。我想在 "if Array(String(whatYouAlreadyWrite)))[i] == Array(whatYouHaveToWrite)[I]"中程序化地按下回车键,有什么方法可以触发程序化的回车键?

swift xcode if-statement enter
1个回答
0
投票

如果按回车键的意思只是要取消键盘,你可以使用 textField.resignFirstResponder().

而且你可以使用textField的委托方法来跟踪用户输入的每个字符。textField(_:shouldChangeCharactersIn:replacementString:).

© www.soinside.com 2019 - 2024. All rights reserved.