Android应用程序如何从触摸屏接收输入?

时间:2015-10-10 10:58:05

标签: android input touch android-service android-permissions

我想知道应用程序如何处理来自触摸屏的输入。例如,如果用户触摸坐标x,y,那么打开(在前景中是活动的)应用程序将如何知道现在必须单击坐标x,y处的小工具(例如按钮)?

另外,我可以控制应用使用其他应用处理触摸输入的方式吗?我的意思是,我想构建一个使用services来控制其他应用如何处理其输入的应用,当然这需要我的应用permission来访问其他应用设置,但我的问题是,是有可能吗?

我已经搜索了应用程序如何处理触摸输入,我发现这些结果很有用,但与我的情况无关,

http://developer.android.com/training/gestures/index.html

How does Android device handle touch screen input?

另外,我知道任何输入硬件都由Android中的HAL (Hardware Abstraction Layer)控制,每个输入设备也都有自己的驱动程序。但应用程序如何处理来自这些设备的输入?

谢谢。

1 个答案:

答案 0 :(得分:1)

有几种方法可以处理Android中的触摸。

首先使用按钮,您可以设置onClick()方法,当您触摸屏幕时会自动触发该方法。

另一种选择是在您的活动中附加onTouchlistener

在此示例中,自定义视图类名为"示例"用id" exampleid"正在附加到" onTouchListener

 Public class Example extends View implements View.onTouchListener {

public Example(Context context) {
Example exampleView = (Example) findViewById(R.id.exampleid); //This is how you set up a onTouch Listener.
    gameView.setOnTouchListener(this);
}

@Override
public boolean onTouch(View v, MotionEvent event) {

//Do something when touched.
}

}
相关问题