要检测Android中触摸事件的结束,可以使用以下代码示例:
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
public class MainActivity extends AppCompatActivity implements OnTouchListener {
private float startX, startY;
private float endX, endY;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
View view = findViewById(R.id.my_view);
view.setOnTouchListener(this);
}
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
startX = event.getX();
startY = event.getY();
return true;
case MotionEvent.ACTION_MOVE:
// handle move event
return true;
case MotionEvent.ACTION_UP:
endX = event.getX();
endY = event.getY();
// handle touch event end
return true;
}
return false;
}
}
以上代码示例中,我们首先给一个View设置了OnTouchListener监听器。在onTouch方法中,通过event.getAction()获取触摸事件的动作类型,然后根据动作类型进行处理。当ACTION_DOWN动作发生时,记录下起始触摸位置的X和Y坐标;当ACTION_MOVE动作发生时,可以在此处处理触摸移动事件;当ACTION_UP动作发生时,记录下结束触摸位置的X和Y坐标,然后在此处处理触摸事件的结束逻辑。