2017-08-19 3 views
0

Salut J'ai frappé un peu un mur de briques, j'ai été la refonte de ma navigation de menu pour mon application. que j'ai réussi à faire. Mais maintenant, l'une des fonctionnalités de mon application a décidé d'arrêter de fonctionner. L'idée est que vous secouiez votre téléphone et qu'il choisisse une image au hasard, le code séparé de l'application fonctionne bien, comme il l'a fait sur toutes les versions précédentes, je l'ai même exécuté rapidement dans sa forme actuelle sur c'est propre juste au cas où ça marcherait parfaitement.L'action de tremblement de mouvement ne fonctionne plus dans swift

J'espère que quelqu'un peut me pointer dans la direction de l'endroit où je me suis trompé.

mon code est le suivant;

import Foundation 
import UIKit 


class cocktailChoice: UIViewController { 

    @IBOutlet weak var drinkImage: UIImageView! 

    var drinkNamesArray:[String] = ["cocktailList0","cocktailList1","cocktailList2","cocktailList3","cocktailList4","cocktailList5","cocktailList6","cocktailList7","cocktailList8","cocktailList9","cocktailList10","cocktailList11","cocktailList12","cocktailList13","cocktailList14","cocktailList15","cocktailList16","cocktailList17","cocktailList18","cocktailList19","cocktailList20","cocktailList21","cocktailList22","cocktailList23","cocktailList24","cocktailList25","cocktailList26","cocktailList27","cocktailList28","cocktailList29","cocktailList30","cocktailList31"] 

    override func viewDidLoad() { 
     self.view.addGestureRecognizer(self.revealViewController().panGestureRecognizer()) 
    } 

    override func motionEnded(_ motion: UIEventSubtype, with event: UIEvent?) { 

     if motion == .motionShake{ 

      let firstRandomNumber = Int(arc4random_uniform(32)) 

      let DrinkString:String = self.drinkNamesArray[firstRandomNumber] 

      self.drinkImage.image = UIImage(named: DrinkString) 

     } 

    } 

} 

compile sans erreur, le IBOutlet est connecter, il n'a pas d'erreurs que je peux voir, mais l'action de secousse ne veut pas jouer. devenir très frustrant maintenant.

Répondre

1

Au lieu de cette partie if motion == .motionShake{, pouvez-vous essayer d'utiliser ceci:

if(event.subtype == .motionShake) { 
     print("Shake event!") 
    } 
+0

pas de réponse, mais se sont heurtées juste par l'application d'une seule page je l'ai écrit plus tôt pour tester le code original et cela ne donne une secousse un événement! sortie. J'ai construit un menu SWRevealViewController pour la navigation, qui doit avoir quelque chose à voir avec, mais je ne sais pas quoi. –

+0

Hmm ... mais j'espère qu'il pourrait vous avoir aidé d'une certaine manière .... :) –

+0

merci de toute façon, mais pense que je vais devoir revenir à utiliser un bouton d'action :( –