나는이 두 개의 버튼을 가지고 있습니다. 왼쪽의 버튼을 누르면 슬라이더를 왼쪽으로 천천히 움직이고 오른쪽 버튼을 누르면 슬라이더가 끝까지 움직입니다. 권리. 지금 가지고있는 코드는 슬라이더를 정말 빨리 움직이고 점차적으로 사용하기를 원합니다.버튼 하나만 누르면 UISlider를 왼쪽이나 오른쪽으로 천천히 어떻게 움직일 수 있습니까?
override func didMoveToView(view: SKView) {
middleSlider = UISlider(frame: CGRectMake(self.view!.bounds.width/2 - 150/2, self.view!.bounds.height/2 * 1.7, 150, 50))
middleSlider.tintColor = UIColor.whiteColor()
middleSlider.minimumTrackTintColor = UIColor.whiteColor()
middleSlider.maximumTrackTintColor = UIColor.whiteColor()
middleSlider.setThumbImage(UIImage(named: "mixerb1"), forState: UIControlState.Normal)
middleSlider.maximumValue = 2.0
middleSlider.minimumValue = 0.0
middleSlider.value = 1.0
middleSlider.continuous = true
middleSlider.userInteractionEnabled = true
middleSlider.addTarget(self, action: #selector(middleSliderChangeAudio), forControlEvents: UIControlEvents.AllEvents)
self.view?.addSubview(middleSlider)
}
override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
let location = touch.locationInNode(self)
let node = self.nodeAtPoint(location)
if node.name == "left" {
print("slider moves to left")
UIView.animateWithDuration(10.0, animations: {
self.middleSlider.value = self.middleSlider.minimumValue
self.middleSlider.continuous = true
}
)
}
if node.name == "right" {
print("slider moves to right")
UIView.animateWithDuration(10.0, animations: {
self.middleSlider.value = self.middleSlider.maximumValue
self.middleSlider.continuous = true
}
)
}
}
문제는 'self.middleSlider.value'는 애니메이션 가능한 속성이 아니므로 애니메이션을 전혀 얻지 못하고 있다는 것입니다. – matt
무엇을 사용해야합니까? – coding22
내 대답을 확인하십시오 – Happiehappie