3
我是Android开发的初学者,我正在为小孩子开发一款应用程序。如你所知,孩子们往往会用一只手握住屏幕(它已经触摸屏幕),并用另一只手点击屏幕。不幸的是,这会导致屏幕无法响应点击。我的问题是,有没有办法让屏幕响应点击,即使它已经用一根手指触摸过了?Android:当另一个手指已经触摸屏幕时是否可以处理点击?
我是Android开发的初学者,我正在为小孩子开发一款应用程序。如你所知,孩子们往往会用一只手握住屏幕(它已经触摸屏幕),并用另一只手点击屏幕。不幸的是,这会导致屏幕无法响应点击。我的问题是,有没有办法让屏幕响应点击,即使它已经用一根手指触摸过了?Android:当另一个手指已经触摸屏幕时是否可以处理点击?
有,在您的onTouchEvent()
处理MotionEvent
ACTION_POINTER_DOWN
。想象一下,当多个手指触摸屏幕时,您想要显示Toast
;你可以做这样的:
@Override
public boolean onTouchEvent(MotionEvent event) {
if (event.getActionMasked() == MotionEvent.ACTION_POINTER_DOWN) {
Toast.makeText(this, "More than one finger on screen", Toast.LENGTH_SHORT);
}
}
您可以检查multi-touch Android developer's page关于这一主题的更多信息。
对于它的价值,我只是测试了我的设备(Nexus 5x,联想TAB2),他们似乎没有出现问题,而手指在屏幕上,而另一个点击。 –
几乎所有今天使用的触摸屏都可以处理多达10个同时触摸屏幕。如果一个应用程序不承认超出第一个应用程序的附加触摸,那么这只是实现的一个缺陷。 –