【问题标题】:Motion shake action not working anymore in swift运动摇动动作不再快速起作用
【发布时间】:2017-08-19 12:07:42
【问题描述】:

您好,我遇到了一些难题,我一直在为我的应用重新设计菜单导航。我设法做到了。但现在我的应用程序的一项功能已决定停止运行。

这个想法是你摇动你的手机,它会随机选择一张图片,与应用程序分开的代码工作正常,就像它在所有以前的版本上所做的那样,我什至在它的当前形式上快速运行它以防万一,它工作得很好。

希望有人能指出我出错的方向。

我的代码如下;

    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)

        }

    }

}

它编译没有错误,IBOutlet 已连接,它没有我可以看到的错误,但摇动动作不想播放。现在变得非常沮丧。

【问题讨论】:

    标签: swift motion


    【解决方案1】:

    这部分不是if motion == .motionShake{,你可以试试这个:

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

    【讨论】:

    • 没有响应,但刚刚通过我之前编写的单页应用程序运行它来测试原始代码,这确实会产生抖动事件!输出。我已经为导航构建了一个 SWRevealViewController 菜单,它肯定与它有关,但不确定是什么。
    • 谢谢,但我想我必须回去使用按钮操作:(
    • 当然...不用担心...:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-29
    • 1970-01-01
    • 1970-01-01
    • 2018-01-19
    • 2016-12-10
    • 2018-02-10
    相关资源
    最近更新 更多