키보드가 표시 될 때 트리거하는 keyboardWillShow 메서드에서 아래 코드를 사용하고 있습니다. 디버그를 사용하여 코드가 실행되고 있지만 버튼 프레임에는 변경 사항이 없습니다. 인쇄가 처음 실행될 때 origin.y는 471입니다. 완료시 실행되면 471이됩니다.애니메이션 도중 단추 프레임 이동
이 버튼을 활성화하여 키보드로 이동하고 위로 이동하려고합니다. 텍스트보기를 위해 완료 버튼으로 사용됩니다.
kbHeight는 253
animateDuration 0.25이다.
Numbers.ANIMATE_DELAY은 다음과 같이 0.0
//Animated done button with keyboard
origDoneFrame = btnDone.frame
btnDone.hidden = false
println(self.btnDone.frame.origin.y)
var uConverted:UInt = UInt(animateCurve)
var options = UIViewAnimationOptions(uConverted << 16)
UIView.animateWithDuration(
animateDuration,
delay: Numbers.ANIMATE_DELAY,
options: options,
animations: {
println(self.btnDone.frame.origin.y)
println(kbHeight)
println(self.btnDone.frame.origin.y-kbHeight)
self.btnDone.frame = CGRectMake(self.btnDone.frame.origin.x, self.btnDone.frame.origin.y - kbHeight, self.btnDone.frame.size.width, self.btnDone.frame.size.height)
println(self.btnDone.frame.origin.y)
return Void()
},
completion: {finished in
println(self.btnDone.frame.origin.y)
return Void()
}
)
출력 반환 : 나는 그에게 다시 재설정 할 것입니다 볼 수있는 유일한 일이
471.0
471.0
253.0
218.0
218.0
471.0
버튼이 제약을 가지고, 하단,하지만 수동으로 프레임을 변경할 때 제약 조건을 무시하고 싶습니다.