我有一个选择器 View ,其中一个组件填充了一组数据。当用户按下一个按钮时,我希望将该行中的选定数据存储在一个变量中,以便我可以使用 segue 将其发送到另一个 View Controller ,并将其显示在标签中。我遇到的唯一问题是实际上要存储该数据以便在其他地方使用。我知道使用 datePicker,我可以做这样的事情来做我想做的事:
@IBAction func buttonPressed(sender: AnyObject) { 变种 chosenDate: NSDate = self.datePicker.date }
这会将用户选择的日期存储在 var chosenDate 中,这是按下按钮时我想要的 pickerView。我也知道我可以使用
在 pickerView 中获取该数据func pickerView(pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int)
唯一的问题是每次用户更改值时它都会选择数据,并且它不允许我将数据存储在函数外部的变量中以便我在我的@IBAction 函数中使用它按钮按下方法。提前致谢!
请您参考如下方法:
好吧,在尝试了不同的方法后,我终于找到了解决问题的方法。这可能不是更有经验的开发人员所做的,但它对我来说就像我想要的那样。这是我所做的:
@IBAction func saveButtonPressed(sender: AnyObject) {
var chosen = pickerView.selectedRowInComponent(0)
var chosenString = arrayPopulatingThePickerView[chosen]
}
我在 pickerView 中只有一个组件,因此当按下按钮时,我将组件 0 的行号存储在一个变量中,然后我将字符串存储在另一个变量中,使其等于我以前使用的数组填充我的选择器 View 。我通过将所选变量传递给它来检索该行。
