2015-02-07 3 views
0

레이블의 텍스트를 사용하여 선택기를 채우려고합니다. 온라인 및 서적에서 검색하는 방법을 시도했지만 아직 행운을 찾지 못했습니다. 는 내가 지금까지 가지고하는 것은 오류를 보여줍니다하지만 여전히신속한 선택기보기를 사용하는 임의의 이름 선택기

감사

수입 UIKit

클래스의 ViewController 실행되지 않습니다 : UIViewController에, UIPickerViewDelegate, UIPickerViewDataSource, UITextFieldDelegate {

@IBOutlet weak var label3: UILabel! 

@IBOutlet weak var label2: UILabel! 

@IBOutlet weak var label: UILabel! 

@IBOutlet weak var textField: UITextField! 

@IBOutlet weak var textField2: UITextField! 

@IBOutlet weak var textField3: UITextField! 


@IBAction func button(sender: UIButton) { 

    label.text = textField.text 
    label2.text = textField2.text 
    label3.text = textField3.text 
    self.textField.resignFirstResponder() 
    self.textField2.resignFirstResponder() 
    self.textField3.resignFirstResponder() 
} 

func textFieldShouldReturn(textField: UITextField) -> Bool { 
    textField.resignFirstResponder() 
    return false 
} 
override func touchesBegan(touches: NSSet, withEvent event: UIEvent) { 
    self.view.endEditing(true) 
} 


var pickerLabels: [UILabel!] { 

    return [label,label2,label3] 
} 

func numberOfComponentsInPickerView(pickerView: UIPickerView) -> Int{ 
    return 1 
} 

func pickerView(pickerView: UIPickerView, numberOfRowsInComponent component:Int) -> Int{ 
    return pickerLabels.count 
} 

func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> NSArray{ 

return pickerLabels 

} 

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. 

} 

}

+0

편집 귀하의 질문에 어떤 생각 합리적인 문장 부호 및 문법이있는 단락 지금까지 가지고있는 코드를 보여주십시오. 웃는 얼굴이 필요하지 않습니다. 일반적으로 피커 뷰가있는 배열을 사용하지만 필수는 아닙니다. 그러나 상상해보십시오 : 버튼을 누르면 텍스트 필드의 텍스트가있는 배열이 업데이트 된 다음 피커 뷰에 다시로드하라는 메시지가 표시됩니다. – Anna

답변

0

UILabels을 귀하의 배열로 보내고 있습니다. 별도의 텍스트의 벽을 변경합니다 나는 당신이 UILabels에서 텍스트를 얻기 위해 요구 사항을 달성하기 위해 노력하고 또한 계산 된 재산에 [String]으로 배열 형식을 ..

var pickerLabels: [String!] { 

    return [label.text, label2.text, label3.text] 
}