我正在开发一个模拟触控板的应用程序。 我需要在每个时间点获得准确的位置值,但使用事件不会起到作用。
由于动作事件 public T Common<T>(Func<T> action)
{
//do something log or watch
try
{
return action();
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
finally
{
}
}
public Int32 Run(string query)
{
//Set whatever type you want. Or extend generic parameters
return Common<Int32>(() =>
{
return 1;
});
}
“仅在我从调用ACTION_MOVE
的位置移动一点时才开始”发送事件,所以该位置会在那里停留,直到我将手指移动远离起始位置位置。
此外,在阅读数据时,该位置最终会卡住一段时间。
以任何方式获得触摸位置势在必行,例如,类似于人们如何在Unity上做什么? (ACTION_DOWN
)
我使用的代码不能完成这项工作:
Touches[touchIndex].Position
答案 0 :(得分:0)
无法轻易获得原始触控数据。 touchEvent是最好的方式。你得到延迟的原因是因为&#34; TOUCH_SLOP&#34;这是android用来确定手指移动是否足以触发事件广播的内容。没有方法可以调用来减少这个,所以你最好的选择是尝试扩展View并将mTouchSlop设置为零或小的东西,这将更频繁地触发触摸广播。点击此处了解更多信息: