touch サンプルコード
サンプル
-- 次のように記述できます:
touch.on(306, 300):step_len(2):step_delay(0):move(350, 800):msleep(1000):off()
--
-- 上の例は次のようにも記述できます:
touch.on(306, 300) -- 画面上の座標 306,300 に指を接触させる動作をシミュレート
:step_len(2) -- 移動ステップ長を 2 に設定
:step_delay(0) -- 移動ステップごとの遅延を 0 に設定
:move(350, 800) -- 上記の両パラメータの設定に従って座標 350,800 まで移動
:msleep(1000) -- 1000 ミリ秒(つまり 1 秒)待機
:off() -- 画面から指を離す
--
-- または次のように:
local te = touch.on(306,300)
te:step_len(2)
te:step_delay(0)
te:move(350, 800)
te:msleep(1000)
te:off()
--
-- 通常、スワイプのコードは次のように記述できます
touch.on(306, 300)
:move(350, 800)
:msleep(1000)
:off()
--
-- 次のコードと同等です
touch.on(306, 300):move(350, 800):msleep(1000):off()
--
-- 画面をタップする動作のシミュレーションにも使用できます
touch.on(306, 300):msleep(30):off()
--
高速で正確にスワイプするためのテクニック
-- より安定して高速かつ正確にスワイプする方法:
-- まず目標位置をわずかに通り越す位置まで高速でスワイプし、その後、目標位置まで戻します
touch.on(125, 2000) -- 開始座標で押す
:step_len(10) -- 高速でスワイプできるようにステップ長を長く設定
:step_delay(1) -- 高速でスワイプできるようにステップ遅延を 1ms に設定
:move(125, 505 - 20) -- まず目標位置をわずかに通り越す位置まで高速でスワイプ(この例は上方向へのスワイプなので、y を小さくします)
:step_len(1) -- 戻るときはステップ長を短くして慣性を抑える
:step_delay(20) -- 戻るときは適度に減速し、軌跡を安定させる
:move(125, 505) -- その後、目標位置まで戻る
:delay(200) -- 指を離す前にしばらく待機
:off() -- 指を離す
- 上の例は「上方向にスワイプ」する場合です。下、左、右方向にスワイプする場合は、「目標を通り越す位置」をそれぞれの方向で目標をわずかに越えた位置に置き換えてください。
- 画面端にかからない場合、通常は目標位置を通り越す位置まで先にスワイプし、その後目標位置まで戻すだけで、正確で慣性のない高速スワイプになります。
- 「目標を通り越す位置」が画面外になる場合、このステップは実際には無効です。そのため、まず画面端まで高速でスワイプし、少し戻してから、最後にゆっくり目標位置までスワイプしてください。
- 目標位置がちょうど画面端にある場合でも、先に端までスワイプし、少し戻してから、最後にゆっくり目標位置へ戻すことを推奨します。直接端で止めるより通常は安定します。