問題タブ [uiaccelerometer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
317 参照

iphone - y 軸上の加速度計の動きの方向を検出する

現在、y軸の動きを検出しています。軸上で移動した方向をどのように計算しますか?

上下に移動しても同じ値が得られます。

これにはジャイロが必要ですか?

0 投票する
1 に答える
77 参照

ipad - サブビューから呼び出されたUIAccelerometerが機能しない

iPad用アプリのUIAccelerometerに「興味深い」問題があります。

私のUIViewControllerには、加速度計をアクティブにするメソッドがあります。これはどのように見えるかです:

私のviewWillAppearでは、このメソッドを呼び出して加速度計をアクティブにしましたが、問題なく機能します。加速度を受け取り、それを使用して画面上のビューを移動します。

ユーザー入力時に、加速度計を使用する必要がある別のビュー(UIView)をロードします。したがって、次のコードを使用してUIViewControllerの加速度計を停止します。

次に、UIViewをロードし、同じ方法で加速度計をアクティブにします。すべて正常に動作します。

私の問題は、UIViewを閉じて、UIViewControllerで加速度計を再開したいときに始まります。UIViewで停止し、UIViewからUIViewControllerのstartAccメソッドを呼び出します。メソッドは実行されますが、アクセラレーションを受け取りません:-(

同じ方法ですが、結果が異なります。

誰かが私がここで欠けているものに私を導くことができますか?

ありがとう

0 投票する
1 に答える
652 参照

ios - CMMotionManager の「deviceMotion」を効果的に使用して、ボールを強制的に円形境界内に移動させる方法は?

Chipmunk Space Managerを使用しています。1 つのボールと多数のセグメント (私の場合は 512) を一緒に結合して円を作成するようにスペースをセットアップしました。

私の目的は、ユーザーがデバイスを動かすと、ボールがその円の中で動くようにすることです。ユーザーがデバイスを速く動かすほど、ボールは円を描くように速く動きます。ボールもすべての物理法則に従わなければなりません。

CMMotionManager から重力と userAcceleration コンポーネントを取得していますが、それを理解することはできません。

手動で力を加えてみましたが、それは現実的に機能しますが、ユーザーがデバイスをどれだけ動かしたかによっては、円内でボールを動かすことができません。小さなボールをグラスに入れてグラスを振ると、ボールはグラスの円形の底を移動し、グラスを動かす/傾ける外力がなくなると、グラスの傾きの方向に静止します。

0 投票する
1 に答える
1633 参照

iphone - iPhone/iPad の加速度計を使用した水平および垂直方向の揺れカウント

縦横の揺れの回数をカウントしたいのでUIAccelerationを参考にしました

モーションイベントについても言及しました

しかし、より良いアプローチを思い付くことができませんでした。あらゆる種類のヘルプ、コード、リファレンス、または任意のタイプを高く評価します。

ユーザーがiPhoneデバイスを振ってシェイクした回数を数えたいだけです.シェイクは、通常の方法でiPhoneを垂直または水平に保持できます(下部のホームキー)

0 投票する
1 に答える
107 参照

iphone - 加速度計がモーションを検出した時間枠の検出

デバイスが加速度計でモーションを検出した時間をどのように検出しますか?

10秒間のモーションなど、デバイスで連続モーション検出を検出したい場合。これはどのように行われますか?加速度センサーのデリゲート メソッドを使用すると、呼び出され続け、時間の計算を処理するのが難しくなります。

0 投票する
3 に答える
2000 参照

iphone - デバイスの上下逆さの検出

上下逆さまのデバイスを検出するための正しい値は何ですか?

私は以下を持っており、ユーザーがデバイスの背面にタイトルを付けたときに検出を開始します。

次の値を使用します

0 投票する
0 に答える
770 参照

iphone - NSOperationQueue がメイン スレッドをブロックしている、UIAccelerometerDelegate が起動しない

[NSOperationQueue waitUntilAllOperationsAreFinished] を呼び出すコードがあります。このキューには、加速度計用のセンサー検出器が配置されています。

加速度計デリゲートは、didAccelerate に応答して収集されたデータを記録するために、メイン スレッドを必要とします。ただし、キューがメイン メソッドをブロックしているため、加速度計のデリゲートが起動しないようです。また、NSOperationQueue ブロックが発生した後にメイン スレッド (NSOBject performSelectorOnMainThread:withObject:waitUntilDone) で強制的に実行されるものも実行されないことに気付きました。

ブロッキングの発生を許可するが、加速度計デリゲートの発火を許可する別のオプションはありますか?

コードの簡単なスニペットを次に示します。

また、AccelerometerOperation については、isFinished と isExecuting を変更することで、start メソッドが終了しても終了しないという問題を回避しました。

waitUntilALlOperationsAreFinished を削除すると、ログに「加速しました」と出力されます。ただし、waitUntilFinished が実行されていると、DidAccelerate にブレーク ポイントを配置してもトリガーされません。

0 投票する
1 に答える
403 参照

iphone - 通話中に加速度計を実行する可能性はありますか?

こんにちは私のプロジェクトでは、呼び出しがアクティブになっている間に加速度計を呼び出す必要があります。このコードを使用して、呼び出し中に加速度計を呼び出します。

しかし、通話中に通話ステータスを表示したり、バックグラウンドで加速を実行したりすることはありません.Apple iOSの最新のマルチタスク機能ガイドからこれを使用しましたが、通話のステータスを表示せず、加速度計はバックグラウンドで実行されていません. 通話中に加速度を感知して通話中に音声ファイルを再生することは可能ですか、それとも iOS では不可能ですか。または、可能であれば、それを可能にする方法またはコードは何ですか。

0 投票する
0 に答える
214 参照

ios5 - UIAccelerometerからの速度

私のプロジェクトでは、電話をどれだけ激しく振ったかに基づいてメッセージを表示するアプリを作成する必要があります。たとえば、最大速度/G力を3秒で登録する必要があります。私は例を思いついた:あなたがあなたのiPhoneを屋根から落とし、枕に着地し、それが1.5G /または40mphに達したとしましょう、あなたが1.5G/40mphに達したと表示します。

前もって感謝します!

0 投票する
0 に答える
131 参照

ios - iPhone のランドスケープ モードでのボール アニメーション

を使用して縦向きモードで画面上のボールをアニメーション化していますUIAccelerometer

正常に動作していますが、ランドスケープモードでも同じように動作させたいと思っています。コードの同じ部分 (ポートレート用) をランドスケープ モードで使用しようとすると、奇妙な結果が得られ、完全に間違っているようです。

以下の私のコードは縦表示用です。