【发布时间】:2015-06-25 18:06:59
【问题描述】:
我创建了一个 UIPickerView,其中包含一系列服务。我使用 didSelectRow 在 UIPickerView 下方显示我选择的服务。这一切都很好,而且效果很好。
我希望选择的服务将我带到另一个名为该服务的视图控制器。例如,在 Picker 中选择了咖啡店,“咖啡店”显示在选择器下方,您单击一个按钮将带您进入显示有关咖啡店的给定信息的页面。
@Pbush25 感谢您的快速回复。请您看看我的代码并告诉我哪里出了问题,因为我仍然无法让它工作。
import UIKit
class ViewController: UIViewController, UIPickerViewDelegate {
@IBOutlet weak var SelectedService: UILabel!
@IBAction func Find(sender: AnyObject) {
}
@IBOutlet weak var ItemLabel: UILabel!
var services = ["Cafe","Coffee Shops","Bar","Takeaway","Sunday Roast","Shoe Mender","Craft Shops","Electrical"]
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
func numberOfComponentsInPickerView(pickerView: UIPickerView) -> Int{
return 1
}
func pickerView(pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int{
return services.count
}
func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String!{
return services[row]
}
}
【问题讨论】:
-
UIPickerView对象包含一个selectedRowInComponent函数,该函数返回所选行的行号。根据该数字,您应该能够编写一个基于所选值推送新视图控制器的函数。
标签: swift uipickerview