日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

swift UI专项训练39 用Swift实现摇一摇功能

發(fā)布時(shí)間:2025/7/14 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 swift UI专项训练39 用Swift实现摇一摇功能 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

? ?微信的搖一搖功能想必大家都用過(guò)。過(guò)春節(jié)的時(shí)候搶紅包也沒(méi)少搖吧。那么用swift語(yǔ)言怎樣實(shí)現(xiàn)這么酷炫的功能呢。搖動(dòng)屬于IOS內(nèi)置可識(shí)別的一種動(dòng)作,在你須要實(shí)現(xiàn)搖動(dòng)功能的viewcontroller中,在viewDidLoad方法中增加下面代碼:

UIApplication.sharedApplication().applicationSupportsShakeToEdit = trueself.becomeFirstResponder()
第一句是要求當(dāng)前頁(yè)面支持對(duì)搖動(dòng)事件可編輯的支持,設(shè)置為true后我們能夠?qū)崿F(xiàn)對(duì)應(yīng)的方法,稍后會(huì)介紹。

第二句是把當(dāng)前頁(yè)面作為第一反應(yīng)者,也就說(shuō)我們有不論什么操作結(jié)果都會(huì)反映到當(dāng)前頁(yè)面中。

如今我們能夠使用與搖動(dòng)相關(guān)的方法了,主要有三個(gè):motionBegin、motionEnded、motionCancelled。

分別捕獲搖動(dòng)開(kāi)始、搖動(dòng)結(jié)束和搖動(dòng)取消三個(gè)動(dòng)作。

我們選用motionEnded來(lái)舉例:

override func motionEnded(motion: UIEventSubtype, withEvent event: UIEvent) {if motion == UIEventSubtype.MotionShake{var alertController1 = UIAlertController(title: "恭喜你,成功了!

", message: nil, preferredStyle: .Alert) var cancelAction = UIAlertAction(title: "取消", style: .Cancel, handler: nil) alertController1.addAction(cancelAction) self.presentViewController(alertController1, animated: true, completion: nil) } }


這種方法是在motion結(jié)束的時(shí)候推斷。假設(shè)剛才的motion是搖動(dòng)的話,那么彈出一個(gè)警告框,提示“恭喜你,成功了。”。以下我們用我近期在做的一個(gè)APP來(lái)測(cè)試下,這是搖動(dòng)前的畫(huà)面:


然后我們搖動(dòng)手機(jī),看看效果:



你能夠在這三個(gè)方法中增加自己須要的代碼。實(shí)現(xiàn)更豐富的功能。

最后再說(shuō)一點(diǎn)。看網(wǎng)上之前的資料說(shuō)須要添加方法,由于大部分view不支持firstresponder:

override func canBecomeFirstResponder() -> Bool {return true}可能這是曾經(jīng)的版本號(hào)了。我用的是xcode6.2正式版,親測(cè)是不須要加這種方法的。



轉(zhuǎn)載于:https://www.cnblogs.com/yangykaifa/p/7105821.html

《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結(jié)

以上是生活随笔為你收集整理的swift UI专项训练39 用Swift实现摇一摇功能的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。