gpt4 book ai didi

ios - 如何在 Swift 中手动启用/禁用键盘返回键?

转载 作者:搜寻专家 更新时间:2023-10-30 22:59:52 26 4
gpt4 key购买 nike

This question is not duplicated from these:

我有两个 TextFields

@IBOutlet weak var textField1: UITextField!
@IBOutlet weak var textField2: UITextField!
  • textField1 有类似返回键的下一步按钮;

  • textField2 有像 Return 键一样的 Go 按钮;

textField1

textField2

只要两个 TextField 都不为空,我想启用第二个 TextField 的 Go 按钮。

我尝试将 someTextField.enablesReturnKeyAutomaticallyTextFieldDelegate 一起使用,但没有成功。

谢谢你的帮助。

最佳答案

下面:只要 textField1 为空,textField2 就会被禁用。如果后者非空,我们启用 textField2,但仅当 textField2 非空时才启用 Go 按钮(通过 .enablesReturnKeyAutomatically 属性),

/* ViewController.swift */
import UIKit

class ViewController: UIViewController, UITextFieldDelegate {
@IBOutlet weak var textField1: UITextField!
@IBOutlet weak var textField2: UITextField!

override func viewDidLoad() {
super.viewDidLoad()

// text field delegates
textField1.delegate = self
textField2.delegate = self

// set return key styles
textField1.returnKeyType = UIReturnKeyType.Next
textField2.returnKeyType = UIReturnKeyType.Go

// only enable textField2 if textField1 is non-empty
textField2.enabled = false

// only enable 'go' key of textField2 if the field itself is non-empty
textField2.enablesReturnKeyAutomatically = true
}

// UITextFieldDelegate
func textFieldShouldReturn(textField: UITextField) -> Bool {

if (textField1.text?.isEmpty ?? true) {
textField2.enabled = false
textField.resignFirstResponder()
}
else if textField == textField1 {
textField2.enabled = true
textField2.becomeFirstResponder()
}
else {
textField.resignFirstResponder()
}

return true
}
}

运行如下:

enter image description here

关于ios - 如何在 Swift 中手动启用/禁用键盘返回键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35350243/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com