[Swift] シェイクジェスチャーでビューを閉じる from mushikago on Vimeo.
このサンプルはボタンを押すと
self.presentViewController(_brow, animated: true, completion: nil)
が実行されて、フルスクリーンでブラウザ(「_brow」というビュー)が開くようになっています。このフルスクリーン状態のビューをシェイクジェスチャーで閉じるようにしてみました。
開かれたビューにアサインしたクラスに
と書いておくと、デバイスをシャカシャカっと振ることでそのビューを閉じることができます。iOSシミュレータでは、「Hardware>Shake Gesture」でテストすることができます。
当然ながら
if (motion == UIEventSubtype.MotionShake){
self.dismissViewControllerAnimated(true, completion: nil)
}
のif文の中を変更すれば、ビューを閉じる以外の別の動作を実行することもできます。
東京造形大学卒業後、マクロメディア(現アドビ)に入社。QAやテクニカルサポートマネージャーとしてFlash、DreamweaverなどのWeb製品を担当。独立後、2007年に虫カゴデザインスタジオ株式会社を設立。2021年東京三鷹を拠点に。最近は、CakePHP、Laravel、Unity、ZBrush、Modo、Adobe Substance 3D、Adobe Firefly、Xcode、Firebaseにフォーカスしています。モバイルアプリ開発情報を主としたブログ「MUSHIKAGO APPS MEMO」の中の人。