2014-10-29 126 views
2

我正在爲iOS 8的第一個鍵盤工作。但是我不能讓它在按鍵上振動。我使用Swift語言,並對按鈕按下事件執行此操作:iOS自定義鍵盤與振動

AudioServicesPlayAlertSound(SystemSoundID(kSystemSoundID_Vibrate)) 

AudioToolbox.AudioServices被導入到文件中。

當我按下按鈕時,鍵盤只是掛起一秒鐘而沒有做任何事情。我無法感覺到掛起後的振動和文字變化。

當我在viewDidLoad方法上執行此功能時,振動起作用。

+0

嘗試將請求分派到主隊列。我不確定如何迅速做到這一點;我不得不爲你查找它。 – 2014-10-29 20:48:30

回答

1

試試看看這個代碼。將一個按鈕和文本框放在故事板中,並將它們連接到您的ViewController。點擊按鈕,手機應該振動。輸入文本,當你點擊返回鍵時,手機應該振動。我使用XCODE 6.1在iOS 8.1上測試了iPhone 5s上的代碼。

import UIKit 
import AudioToolbox 

class ViewController: UIViewController, UITextFieldDelegate { 

    @IBAction func buttonTapped(sender: AnyObject) { 
     AudioServicesPlayAlertSound(SystemSoundID(kSystemSoundID_Vibrate)) 


    } 

    @IBOutlet weak var textField: UITextField! 

    func textFieldShouldReturn(textField: UITextField!) -> Bool { 

     textField.resignFirstResponder() 
     AudioServicesPlayAlertSound(SystemSoundID(kSystemSoundID_Vibrate)) 

     return true 
    } 

    override func viewDidLoad() { 
     super.viewDidLoad() 

     textField.delegate = self 
    } 
}