2015-04-20 4 views
-1

я ужеУ меня возникают проблемы, чтобы обнаружить встряхивания событие

  • motionEnded Реализована функция

    override func motionEnded(motion: UIEventSubtype, withEvent event: UIEvent) { 
        if motion == .MotionShake { 
         println("Shake it off") 
        } 
    } 
    
  • Реализована функция canBecomeFirstResponder

    override func canBecomeFirstResponder() -> Bool { 
        return true 
    } 
    
  • Called self.becomeFirstResponder() в viewDidAppear функция

    override func viewDidAppear(animated: Bool) { 
        self.becomeFirstResponder()  
    } 
    

Я пытаюсь обнаружить дрожание внутри UIScrollView, который в представлении отделенного от раскадровки

+0

описать "проблемы". И, не полагайтесь на название как часть вашего вопроса. Покажите нам соответствующий код, объясните поведение, которое вы получаете, и поведение, которое вы ожидаете, и как это поведение отличается. – nhgrif

+0

Моя проблема в том, что я не могу обнаружить событие shake. Я не получаю никакого поведения, я просто хочу его обнаружить. – Anderson

+0

А что ты пробовал? Какую документацию вы прочтете, чтобы предлагать подход, который вы принимаете, даже отдаленно корректен? И где код, который вы реализовали? Это не служба написания кода [но это ...] (https://careers.stackoverflow.com/employer) – nhgrif

ответ

0

Я не знаю, почему вы должны были позвонить becomeFirstResponder, в любом случае, эти как правило, работает для меня:

override func motionEnded(motion: UIEventSubtype, withEvent event: UIEvent) { 
if event.subtype == UIEventSubtypeMotionShake 
    { 
    if numOfShakes == 1 
    { 
     //animate 
     //Shook for a couple seconds 
     numOfShakes = 0; 
    } 
    else 
    { 
     numOfShakes++ 
     if (numOfShakes == 1) 
     { 

      println("Shake it off") 

     } 
    } 
    } 
} 

Надеется, что это помогает :)

+0

Спасибо за ваш ответ. Это не сработало. по какой-либо причине 'motionEnded' даже не вызывается. – Anderson

+0

попробуйте удалить переопределение. – SahandTheGreat

+0

устранение ошибки приводит к ошибке. «Объявление Overhang требует ключевого слова« переопределить ». – Anderson

Смежные вопросы