ios的震動(dòng)反饋

最近寫 ios TableView 加入長(zhǎng)按的手勢(shì)后,希望在 cell 長(zhǎng)按彈窗的同時(shí)加入震動(dòng)反饋效果。

查詢后發(fā)現(xiàn)一個(gè)可用的震動(dòng)方法:

1.導(dǎo)入 #import<AudioToolbox/AudioToolbox.h>

2.調(diào)用 AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);

這樣就可以實(shí)現(xiàn)震動(dòng)。

但震動(dòng)很暴力,力度大,時(shí)間大概1s。感受很差。個(gè)人覺(jué)得像 twitter 上點(diǎn)贊那種震動(dòng)感覺(jué),或者像 iphone7 home 鍵的震動(dòng)反饋,或者系統(tǒng)自帶的 DatePicker 翻動(dòng)時(shí)的觸感都很棒。


后來(lái)發(fā)現(xiàn)上面函數(shù)可以傳入其他參數(shù)來(lái)達(dá)到輕微震動(dòng)效果:


// 普通短震,3D Touch 中 Peek 震動(dòng)反饋
AudioServicesPlaySystemSound(1519);
// 普通短震,3D Touch 中 Pop 震動(dòng)反饋
AudioServicesPlaySystemSound(1520);
// 連續(xù)三次短震
AudioServicesPlaySystemSound(1521);

注意:這里調(diào)用的是非公開 API。


另外 ios10 后加入的 UIImpactFeedbackGenerator ,提供了更好的震動(dòng)效果。

調(diào)用也很簡(jiǎn)單:


UIImpactFeedbackGenerator*impactLight = [[UIImpactFeedbackGeneratoralloc]initWithStyle:UIImpactFeedbackStyleLight]; 
[impactLight impactOccurred];

震動(dòng)有多個(gè)模式可選。


typedefNS_ENUM(NSInteger, UIImpactFeedbackStyle) {

    UIImpactFeedbackStyleLight,

    UIImpactFeedbackStyleMedium,

    UIImpactFeedbackStyleHeavy

};

注意:UIImpactFeedbackGenerator 只在 iphone7 后手機(jī)才會(huì)產(chǎn)生震動(dòng)。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 本文使用底層接口,實(shí)現(xiàn) iOS 設(shè)備上的連續(xù)震動(dòng),以及連續(xù)播放系統(tǒng)聲音(不是音樂(lè)播放器) 主要功能函數(shù) 首先實(shí)現(xiàn)上...
    煜寒了閱讀 17,948評(píng)論 24 40
  • 只是簡(jiǎn)單的實(shí)現(xiàn)功能,使用GCD延遲循環(huán)調(diào)用,主要是swift對(duì)gcd寫法的改變,可以寫個(gè)單例,全局調(diào)用,方法內(nèi)部可...
    Da辰閱讀 1,608評(píng)論 0 0
  • 前言 TapticEngine是什么總的來(lái)說(shuō),TapticEngine是蘋果產(chǎn)品上推出的全新震動(dòng)模塊名稱,最早出現(xiàn)...
    深藍(lán)_S閱讀 33,437評(píng)論 3 22
  • 最近真的是好久沒(méi)有寫簡(jiǎn)書了, 期間有無(wú)數(shù)次沖動(dòng)想認(rèn)真寫一篇, 可是總擠不出整塊的時(shí)間來(lái)寫. 還有一個(gè)原因就是總覺(jué)得...
    Pusswzy閱讀 13,179評(píng)論 16 32
  • 文:薛善強(qiáng) 我還沒(méi)有來(lái)得及欣賞這春天的景色已經(jīng)悄然落下帷幕。早春的花朵已經(jīng)落盡,還會(huì)有些花陸續(xù)開放,這樣的春天才會(huì)...
    薛善強(qiáng)閱讀 425評(píng)論 0 0

友情鏈接更多精彩內(nèi)容