在 swift 5.1 中获取文本字段输入并将其插入选择器
Taking textfield input and inserting it into a picker in swift 5.1
我正在处理 swift 5.1 中处理选取器的初学者项目。
目前,我有一个带有一些名称的选择器和两个名为 Insert 和 Replace 的按钮。
我希望用户能够在文本字段中输入名称并添加该名称
如果用户按下插入按钮或用该名称替换当前选择的名称,则显示到选择器
如果用户按下替换按钮,则在选择器中。在它下面是我目前拥有的代码。
import UIKit
class ViewController: UIViewController, UIPickerViewDelegate, UIPickerViewDataSource, UITextFieldDelegate {
private let selectNames = [ "Charles", "Tim", "Bob", "Kim", "Lisa"]
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
@IBOutlet weak var picker: UIPickerView!
@IBAction func onSelectPressed(_ sender: UIButton) {
let row = picker.selectedRow(inComponent: 0)
let selected = selectNames[row]
let title = "You Selected \(selected)!"
let alert = UIAlertController(
title: title,
message: "Thank you for choosing",
preferredStyle: .alert)
let action = UIAlertAction(
title: "You're welcome",
style: .default,
handler: nil)
alert.addAction(action)
present(alert, animated: true, completion: nil)
}
//MARK:-
// MARK: Picker Data Source Methods
func numberOfComponents(in pickerView: UIPickerView) -> Int { return 1
}
func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int { return selectNames.count
}
// MARK: Picker Delegate Methods
func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? { return selectNames[row]
}
}
在插入按钮上,您将创建一个接受 uitextfields 字符串并将其添加到 selectNames 数组的函数。
然后使用 selctNames.Count 作为行数。
在插入按钮上使用的函数中刷新选择器。
我正在处理 swift 5.1 中处理选取器的初学者项目。 目前,我有一个带有一些名称的选择器和两个名为 Insert 和 Replace 的按钮。 我希望用户能够在文本字段中输入名称并添加该名称 如果用户按下插入按钮或用该名称替换当前选择的名称,则显示到选择器 如果用户按下替换按钮,则在选择器中。在它下面是我目前拥有的代码。
import UIKit
class ViewController: UIViewController, UIPickerViewDelegate, UIPickerViewDataSource, UITextFieldDelegate {
private let selectNames = [ "Charles", "Tim", "Bob", "Kim", "Lisa"]
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
@IBOutlet weak var picker: UIPickerView!
@IBAction func onSelectPressed(_ sender: UIButton) {
let row = picker.selectedRow(inComponent: 0)
let selected = selectNames[row]
let title = "You Selected \(selected)!"
let alert = UIAlertController(
title: title,
message: "Thank you for choosing",
preferredStyle: .alert)
let action = UIAlertAction(
title: "You're welcome",
style: .default,
handler: nil)
alert.addAction(action)
present(alert, animated: true, completion: nil)
}
//MARK:-
// MARK: Picker Data Source Methods
func numberOfComponents(in pickerView: UIPickerView) -> Int { return 1
}
func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int { return selectNames.count
}
// MARK: Picker Delegate Methods
func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? { return selectNames[row]
}
}
在插入按钮上,您将创建一个接受 uitextfields 字符串并将其添加到 selectNames 数组的函数。
然后使用 selctNames.Count 作为行数。
在插入按钮上使用的函数中刷新选择器。