【问题标题】:Reading value of UITextField Swift 3UITextField Swift 3的读取值
【发布时间】:2017-06-14 09:47:14
【问题描述】:

在我的应用程序中,我有一个 UITextFieldUIPickerView 作为下拉菜单,当用户点击文本字段时,他必须选择他的性别(男性或女性。我只想读取用户的值/字符串已在文本字段中选择。有人可以在这里帮助我吗

@IBAction func textChange(_ sender: UITextField) {

    if userGenderTextField (Something has to here, Not sure what exactly)== "Male" {
        print("Hello Sir")
    } else {
        print("Hello Madam")
    }


}

【问题讨论】:

  • 你可以使用 UITextField 的.text 方法。
  • if userGenderTextField.text == "Male" 使用这个

标签: ios iphone swift swift3


【解决方案1】:

你只需要使用UITextField.text方法

@IBAction func textChange(_ sender: UITextField) {
    if sender.text == "Male" {
        print("Hello Sir")
    } else {
        print("Hello Madam")
    }
}

如果您有多个文本字段连接到同一个 IBAction,您还需要检查哪个文本字段调用了该函数。

【讨论】:

    【解决方案2】:

    这听起来像是一种迂回的方式。

    大概在某个时候,您正在检测用户选择UIPickerView 中的哪个项目并在UITextField 上设置文本?

    如果是这样,为什么不将此值存储为属性。这样您就可以随时访问它。

    当您想了解游戏状态时,必须检查 UITextField 的文本值似乎不是最好的主意。

    【讨论】:

      【解决方案3】:

      首先,以编程方式创建一个uIPickerView,并将其dataSource和delegate属性设置为分别符合UIPickerViewDataSourceUIPickerViewDelegate的一些对象。最好的方法是让控制 UITextField 和 UIPickerView 的对象符合这两个协议,因为您将需要直接访问您的 textField 和 pickerView。

      UIPickerViewDataSource 是控制选择器中显示的数据。 UIPickerViewDelegate 是接收在选择器上发生的事件(例如当用户选择一个选项时)。

      一旦你准备好你的pickerView并设置好你的pickerView作为你的textField的inputView

      textField.inputView = pickerView
      

      这样,当有人点击 textField 时,而不是显示键盘,您将看到带有完整数据的 pickerView。

      UIPickerViewDelegate 上有一个函数叫做:

      func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int)
      

      每次您在 pickerView 上选择一个选项时都会调用它。

      在该函数中,您可以设置 textField 的文本并在其他地方访问:

      func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
          textField.text = yourData[component][row]
      }
      

      【讨论】:

        【解决方案4】:

        在 if 语句中输入 textfieldname.text== male print male else female

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多