2014-12-31 4 views
1
다음

내가 사용하는 코드 :이 코드를 실행하면PickerView 어떤 값을 표시되지

// PickerView Functions 

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

// 
func pickerView(pickerView: UIPickerView, numberOfRowsInComponent 
    component: Int) -> Int { 

      return categoryArray.count // also tried with 5 or other numbers... 

} 

func pickerView(pickerView: UIPickerView, viewForRow row: Int, 
    forComponent component: Int, reusingView view: UIView!) -> UIView { 
     var lab : UILabel! 
      if let label = view as? UILabel { 
       lab = label 
      } else { 
       lab = UILabel() 
      } 
      lab.text = categoryArray[row] // also tried with text like "some test" 
      lab.backgroundColor = UIColor.clearColor() 
      lab.sizeToFit() 
      return lab 
} 

func pickerView(pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) { 
     self.categoryLabel.text = categoryArray[row] 
} 

PickerViewDelegate가 설정되고 모든 출구가 만들어지고 엮은이 ... , 그것은 반환하지 않습니다 값이 이미 채워져 있지만 categoryArray의 모든 값. Picker를 수동으로 채우려고했지만 그 또한 작동하지 않았습니다. 이유, 아이디어가 무엇일까요? 의견에 대한

+0

아마 프레임이 0,0,0,0입니까? 피커의 프레임을 확인하고 실제로 피커 크기를 확인할 수 있습니까? – Mike

+0

중단 점을 추가하여 위임자로 점프할지 여부를 확인합니다. 그리고 대리인을 어딘가에 배치 했습니까 (자기)? –

+0

답변으로 추가하고 승인하십시오. 따라서 답이 표시되지 않습니다. – manecosta

답변

1

고마워, 나는 내가있는 viewDidLoad에서 자체에 위임을 설정하는 것을 잊었다 ... 문제를 발견, 난 단지 ;-)

1
override func viewDidLoad() { 
    super.viewDidLoad() 

    picker.delegate = self 
    picker.dataSource = self 
    picker.tag = 1 
} 
작동하지 않을 수 있는지 대리자 클래스를 구현

희망이 있습니다.

관련 문제