ios - UIPickerView didSelectRow not called -
(swift, xcode6, ios8, iphone)
in uipickerview
control, didselectrow
not beingness called.
splash
delegate (and datasource) picker. splash
extends uiviewcontroller
class all other functions work. no errors, picker spins, has 5 rows, , displays row number defined in other functions. when didselectrow
method called? need implement done
button of kind, or method fire when user stops spinning? need implement separate notification? tyvm :)
class splash: uiviewcontroller, uipickerviewdatasource, uipickerviewdelegate { @iboutlet var countrypicker : uipickerview = nil func numberofcomponentsinpickerview(pickerview: uipickerview!) -> int { homecoming 1 } func pickerview(pickerview: uipickerview!, numberofrowsincomponent component: int) -> int { homecoming 5 } func pickerview(pickerview: uipickerview!, titleforrow row: int, forcomponent component: int) -> string { homecoming "\(row)" } func pickerview(pickerview: uipickerview!, didselectrow row: int, forcomponent component: int) -> int { println("row: \(row)") homecoming row } override func viewdidload() { super.viewdidload() // additional setup after loading view, typically nib. } override func didreceivememorywarning() { super.didreceivememorywarning() // dispose of resources can recreated. } }
you have wrong signature, pickerview:didselectrow:forcomponent:
returns void, not integer. try:
func pickerview(pickerview: uipickerview!, didselectrow row: int, forcomponent component: int) { println("row: \(row)") }
ios xcode delegates swift uipickerview
No comments:
Post a Comment