2015-07-15 4 views
0

У меня есть UIImageView (stick) поверх моего экрана, и когда появляется представление, оно оживляет движение по всему экрану до конца. В середине экрана есть UIButton (рука), который я буду нажимать всякий раз, когда изображение, которое идет вниз, находится поверх этой кнопки. Вот мой код:Анимация движения UIImageView, а затем использование CGRectIntersection

override func viewDidAppear(animated: Bool) { 
    UIView.animateWithDuration(1, animations: {self.stick.center = CGPointMake(self.stick.center.x, 760)}, completion: nil) 
} 

@IBAction func touchHand(sender: UIButton) { 
    if !CGRectIsNull(CGRectIntersection(stick.frame, hand.frame)){ 
     println("intersected") 
    } 

} 

Метод touchHand, когда я прикасаюсь к UIButton в середине экрана. Проблема в том, что она не работает! Я напечатал stick.frame, и это не меняется ... Я также пробовал оживить через YConstraint, что у меня есть и все еще не работает, потому что он остается неизменным, хотя он движется ... Любые идеи? Благодаря

ответ

0

Это очень похоже на this question, так что следующий должен помочь вам:

@IBAction func touchHand(sender: UIButton) { 
    let stickPresentationFrame = (stick.layer.presentationLayer() as! CALayer).frame 
    if !CGRectIsNull(CGRectIntersection(stickPresentationFrame, hand.frame)){ 
     println("intersected") 
    } 
} 
Смежные вопросы