Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
Kanako Kobayashi
1,694 views
シェイクを検知して学ぼう、モーションイベント!
「Swiftビギナーズ勉強会 第五回」で発表したスライドです。 シェイクをカウントするデモアプリを通して、モーションイベントの仕組みを説明しています。
Technology
◦
Read more
2
Save
Share
Embed
Embed presentation
Download
Downloaded 11 times
1
/ 14
2
/ 14
3
/ 14
4
/ 14
5
/ 14
6
/ 14
7
/ 14
8
/ 14
9
/ 14
10
/ 14
11
/ 14
12
/ 14
13
/ 14
14
/ 14
More Related Content
PDF
Movable Type Data API連携!店舗情報を地図に表示させよう!
by
Kanako Kobayashi
PDF
Rubyを楽しくする第一歩!ブロックを理解する!
by
Kanako Kobayashi
PDF
iOS開発を楽しむ最初の一歩!デリゲートをなるべく分かりやすく!
by
Kanako Kobayashi
PDF
React Nativeの話のその前に… サービスの作り方の話
by
Kanako Kobayashi
PPTX
僕はどうしてAngular2をテーマに登壇することになってしまったのか
by
Tomohiro Noguchi
PPTX
それRxJSでできるよ
by
Tomohiro Noguchi
PDF
Rubyist Magazine 活動報告
by
zep716
PDF
Xcodeのデバッグを極めよう!
by
Kanako Kobayashi
Movable Type Data API連携!店舗情報を地図に表示させよう!
by
Kanako Kobayashi
Rubyを楽しくする第一歩!ブロックを理解する!
by
Kanako Kobayashi
iOS開発を楽しむ最初の一歩!デリゲートをなるべく分かりやすく!
by
Kanako Kobayashi
React Nativeの話のその前に… サービスの作り方の話
by
Kanako Kobayashi
僕はどうしてAngular2をテーマに登壇することになってしまったのか
by
Tomohiro Noguchi
それRxJSでできるよ
by
Tomohiro Noguchi
Rubyist Magazine 活動報告
by
zep716
Xcodeのデバッグを極めよう!
by
Kanako Kobayashi
More from Kanako Kobayashi
PDF
Svgアニメーションを実装してみよう 20150207
by
Kanako Kobayashi
PDF
超簡単!? ActiveAdminで作る管理画面@Ruby / Ruby on Rails ビギナーズ勉強会 第3回
by
Kanako Kobayashi
PDF
Swiftで、Webサーバにデータを送信・登録しよう!
by
Kanako Kobayashi
PDF
Railsから学ぶRESTfulなuri設計
by
Kanako Kobayashi
PDF
Railsで非同期処理を実装しよう!!
by
Kanako Kobayashi
PDF
Swiftビギナーズ倶楽部 vol.2
by
Kanako Kobayashi
PDF
WordPressの構造を理解しよう
by
Kanako Kobayashi
PDF
Swiftで外部ライブラリを使ってみよう
by
Kanako Kobayashi
PDF
楽しいSwift!クラスと構造体を知る:)
by
Kanako Kobayashi
PDF
Ruby on Railsではじめるrspecテスト
by
Kanako Kobayashi
PDF
oEmbedで、色んなコンテンツをWordPressに組み込もう!
by
Kanako Kobayashi
PDF
Swiftオープンソース化ってなんですか?
by
Kanako Kobayashi
PDF
swiftビギナーズ倶楽部:タブバーから学ぶ 「App delegate」と「as演算子」
by
Kanako Kobayashi
PDF
railsはじめの一歩
by
Kanako Kobayashi
PDF
20141220_iOS8マルチデバイス対応(Size Classes編)
by
Kanako Kobayashi
PDF
Swiftビギナーズ勉強会 第一回@Co-Edo
by
Kanako Kobayashi
PDF
Gulp De wordpress in WordBench
by
Kanako Kobayashi
Svgアニメーションを実装してみよう 20150207
by
Kanako Kobayashi
超簡単!? ActiveAdminで作る管理画面@Ruby / Ruby on Rails ビギナーズ勉強会 第3回
by
Kanako Kobayashi
Swiftで、Webサーバにデータを送信・登録しよう!
by
Kanako Kobayashi
Railsから学ぶRESTfulなuri設計
by
Kanako Kobayashi
Railsで非同期処理を実装しよう!!
by
Kanako Kobayashi
Swiftビギナーズ倶楽部 vol.2
by
Kanako Kobayashi
WordPressの構造を理解しよう
by
Kanako Kobayashi
Swiftで外部ライブラリを使ってみよう
by
Kanako Kobayashi
楽しいSwift!クラスと構造体を知る:)
by
Kanako Kobayashi
Ruby on Railsではじめるrspecテスト
by
Kanako Kobayashi
oEmbedで、色んなコンテンツをWordPressに組み込もう!
by
Kanako Kobayashi
Swiftオープンソース化ってなんですか?
by
Kanako Kobayashi
swiftビギナーズ倶楽部:タブバーから学ぶ 「App delegate」と「as演算子」
by
Kanako Kobayashi
railsはじめの一歩
by
Kanako Kobayashi
20141220_iOS8マルチデバイス対応(Size Classes編)
by
Kanako Kobayashi
Swiftビギナーズ勉強会 第一回@Co-Edo
by
Kanako Kobayashi
Gulp De wordpress in WordBench
by
Kanako Kobayashi
Recently uploaded
PDF
第21回 Gen AI 勉強会「NotebookLMで60ページ超の スライドを作成してみた」
by
嶋 是一 (Yoshikazu SHIMA)
PDF
自転車ユーザ参加型路面画像センシングによる点字ブロック検出における性能向上方法の模索 (20260123 SeMI研)
by
Yuto Matsuda
PDF
2025→2026宙畑ゆく年くる年レポート_100社を超える企業アンケート総まとめ!!_企業まとめ_1229_3版
by
sorabatake
PDF
ST2024_PM1_2_Case_study_of_local_newspaper_company.pdf
by
akipii ogaoga
PDF
Starlink Direct-to-Cell (D2C) 技術の概要と将来の展望
by
CRI Japan, Inc.
PDF
Team Topology Adaptive Organizational Design for Rapid Delivery of Valuable S...
by
akipii ogaoga
PDF
PMBOK 7th Edition Project Management Process Scrum
by
akipii ogaoga
PDF
PMBOK 7th Edition_Project Management Context Diagram
by
akipii ogaoga
PDF
100年後の知財業界-生成AIスライドアドリブプレゼン イーパテントYouTube配信
by
e-Patent Co., Ltd.
PDF
FY2025 IT Strategist Afternoon I Question-1 Balanced Scorecard
by
akipii ogaoga
PDF
Reiwa 7 IT Strategist Afternoon I Question-1 3C Analysis
by
akipii ogaoga
PDF
PMBOK 7th Edition_Project Management Process_WF Type Development
by
akipii ogaoga
PDF
Reiwa 7 IT Strategist Afternoon I Question-1 Ansoff's Growth Vector
by
akipii ogaoga
第21回 Gen AI 勉強会「NotebookLMで60ページ超の スライドを作成してみた」
by
嶋 是一 (Yoshikazu SHIMA)
自転車ユーザ参加型路面画像センシングによる点字ブロック検出における性能向上方法の模索 (20260123 SeMI研)
by
Yuto Matsuda
2025→2026宙畑ゆく年くる年レポート_100社を超える企業アンケート総まとめ!!_企業まとめ_1229_3版
by
sorabatake
ST2024_PM1_2_Case_study_of_local_newspaper_company.pdf
by
akipii ogaoga
Starlink Direct-to-Cell (D2C) 技術の概要と将来の展望
by
CRI Japan, Inc.
Team Topology Adaptive Organizational Design for Rapid Delivery of Valuable S...
by
akipii ogaoga
PMBOK 7th Edition Project Management Process Scrum
by
akipii ogaoga
PMBOK 7th Edition_Project Management Context Diagram
by
akipii ogaoga
100年後の知財業界-生成AIスライドアドリブプレゼン イーパテントYouTube配信
by
e-Patent Co., Ltd.
FY2025 IT Strategist Afternoon I Question-1 Balanced Scorecard
by
akipii ogaoga
Reiwa 7 IT Strategist Afternoon I Question-1 3C Analysis
by
akipii ogaoga
PMBOK 7th Edition_Project Management Process_WF Type Development
by
akipii ogaoga
Reiwa 7 IT Strategist Afternoon I Question-1 Ansoff's Growth Vector
by
akipii ogaoga
シェイクを検知して学ぼう、モーションイベント!
1.
シェイクを検知して学ぼう! モーションイベント Swiftビギナーズ倶楽部 第5回 写真素材ぱくたそ http://www.pakutaso.com
2.
• WordPressもくもく倶楽部@Co-Edoもやってます。 • Ruby
/ Ruby on Rails ビギナーズ倶楽部@Co-Edoやってます( ́ ▽ ` )ノ • スマホアプリ開発初心者な、アプリケーションエンジニア(Rails / LAMP / Java / Oracle) Self-Intoroduction http://ror-beginners.doorkeeper.jp/ http://wp-moku.doorkeeper.jp/
3.
1) シェイクをカウントしてみよう! Today's Agenda 2)モーションイベントを学ぼう! 3)モーションイベントの実装方法!
4.
1-1) シェイクをカウントしてみよう! Let s
DEMO!
5.
2-1)モーションイベントを学ぼう! モーションイベントとは! デバイスを振ったり、傾けたりすることで、 モーションイベントが発生します。 デバイスのハードウェア 加速度センサー ジャイロスコープ イベントを検知してくれるのは CoreMotionフレームワーク
6.
2-2)モーションイベントを学ぼう! https://developer.apple.com/jp/documentation/EventHandlingiPhoneOS.pdf 引用資料:イベント処理ガイド(iOS用) 加速度センサー ・x、y、z軸に沿った速度の変化を測定します。 ・加速度データを受け取って処理するためには、 CMMotionManagerクラスを利用します。 ・startAccelerometerUpdates(プル型) ーアプリケーションは定期的にこの値を取得します。 ・startAccelerometerUpdatesToQueue:withHandler(プッシュ型) ー加速度センサーのデータ更新に応じて実行されます。 いずれかのメソッドを利用。
7.
2-3)モーションイベントを学ぼう! ジャイロスコープ ・3つの空間軸の周りの回転速度を測定します。 ・ジャイロスコープが搭載されているデバイス。 https://developer.apple.com/jp/documentation/EventHandlingiPhoneOS.pdf 引用資料:イベント処理ガイド(iOS用) ・startGyroUpdates(プル型) ーアプリケーションは定期的にこの値を取得します。 ・startGyroUpdatesToQueue:withHandler(プッシュ型) ージャイロスコープのデータ更新に応じて実行されます。 ー iPhone 4以降/iPod
touch第4世代/iPad 2以降 いずれかのメソッドを利用。
8.
2-4)モーションイベントを学ぼう! データにアクセスする方法 1)デバイスの大まかな向きが分かればよく、 向きベクトルは必要ないという場合 => UIDeviceを使ってデバイスの向きを取得します。 2)デバイスを振る動きに応答したい場合 => UIEventオブジェクトから必要な情報を取得します。 3)UIDeviceやUIEventを使って 必要な情報が得られない場合 =>
Core Motionフレームワークを利用して、加速度センサー、 ジャイロスコープ、デバイスモーションの各クラスにアクセスします。
9.
3-1)モーションイベントの実装方法! モーション処理メソッドは、3種類あります。 ・motionBegan:withEvent ・motionEnded:withEvent ・motionCancelled:withEvent motionBegan、motionEndedのいずれか、 あるいは両方を実装する必要があります。 motionCancelledメソッドも実装して、iOSが モーションイベントをキャンセルした場合に、 対処できるようにしましょう。
10.
@IBOutlet weak var
countLabel: UILabel! var cnt = 0 override func motionBegan(motion: UIEventSubtype, withEvent event: UIEvent) { if event.type == UIEventType.Motion && event.subtype == UIEventSubtype.MotionShake { // シェイク動作始まり時の処理 // 今回は特に処理を入れていません。 } } override func motionEnded(motion: UIEventSubtype, withEvent event: UIEvent) { if event.type == UIEventType.Motion && event.subtype == UIEventSubtype.MotionShake { // シェイク動作終了時の処理 cnt++ countLabel.text = cnt.description } } override func motionCancelled(motion: UIEventSubtype, withEvent event: UIEvent) { // モーションイベントをキャンセルしたとき対処 // イベントがキャンセルされるのは、シェイクモーションが割り込まれたとき、 // あるいは(シェイクがあまりに長く続くなどのため)モーションが有効でないとiOSが判断したときです。 countLabel.text = "NG" } 3-2)モーションイベントの実装方法! DEMOアプリのコード
11.
3-3)モーションイベントの実装方法! シュミレータでの 確認方法! iOS Simulator >
Hardware > Shake Gesture Or control + command + z
12.
ま と め モーションイベントデータにアクセスする方法 1)デバイスの大まかな向きを取得する場合は、 UIDeviceを利用する。 2)シェイク時には、UIEventを利用する。 3)UIDeviceやUIEventを使って必要な情報が得られない 場合は、Core Motionフレームワークを利用する。
13.
わからないー! だれか教えてー♪ Swiftビギナーズ倶楽部は わからないことは周りの人に聞いて、気軽に教え合って、 皆の疑問を1つでも解決して、楽しんで開発していきましょう。
14.
Let's study together! Thank
you :)
Download