2016-08-07 3 views
1

나는 EFCircularSlider라는 라이브러리를 사용하고 있습니다. ObjC 라이브러리이며 프로젝트에 성공적으로 가져 왔습니다. 그러나 문제는 슬라이더 값을 UILabel으로 업데이트 할 수 없습니다. 이 ObjC에서 수행하는 방법이있다EFCircularSlider의 값을 UILabel로 업데이트

let sliderFrame = CGRectMake(100, 150, 200, 200) 
let circularSlider = EFCircularSlider(frame: sliderFrame) 

circularSlider.addTarget(self, 
          action:#selector(TemperatureConversion.valueChange(_:)), 
          forControlEvents:UIControlEvents.ValueChanged 
) 

self.view.addSubview(circularSlider) 

func valueChange(sender: EFCircularSlider){ 
    circularSlider.minimumValue = 0 
    circularSlider.maximumValue = 100 
    circularSlider.currentValue = 0 


    upperLabel.text = "\(circularSlider.currentValue)" 

} 

enter image description here

. 내가 어디로 잘못 가고 있니?

답변

2

valueChange 메서드 대신 viewDidLoad 메서드 내에서이 줄을 추가해야합니다. 따라서이 라인을 viewDidLoad에 추가하고 valueChange을 이와 같이 변경하십시오.

override func viewDidLoad() { 
    super.viewDidLoad() 
    let sliderFrame = CGRectMake(100, 150, 200, 200) 
    let circularSlider = EFCircularSlider(frame: sliderFrame) 
    circularSlider.addTarget(self,action:#selector(TemperatureConversion.valueChange(_:)), 
         forControlEvents:UIControlEvents.ValueChanged) 

    circularSlider.minimumValue = 0 
    circularSlider.maximumValue = 100 
    circularSlider.currentValue = 0 
    self.view.addSubview(circularSlider) 
} 

func valueChange(sender: EFCircularSlider){ 
    upperLabel.text = "\(sender.currentValue)" 
} 
+0

고쳐! 고마워요 :) –

+0

환영 메이트 :) 해피 코딩 :) –

+0

문제는 'valueChange' 메소드 내에서'currentValue'를 다시 0으로 설정하는 것이 었습니다. –

관련 문제