11

谁能告诉我如何在 Android 中检测和获取触摸位置。

假设,如果我触摸屏幕,那么我应该在标签中获得触摸位置。

4

2 回答 2

2

如果使用 PhoneGap,您可以使用 HTML/JS。请参阅下文

推荐这个链接- http://miloq.blogspot.in/2011/05/coordinates-mouse-click-canvas.html

<style type="text/css">

#canvas{background-color: #000;}

</style>

<script type="text/javascript">

  document.addEventListener("DOMContentLoaded", init, false);

  function init()
 {
    var canvas = document.getElementById("canvas");
    canvas.addEventListener("mousedown", getPosition, false);
  }

 function getPosition(event)
 {
var x = new Number();
var y = new Number();
var canvas = document.getElementById("canvas");

if (event.x != undefined && event.y != undefined)
{
  x = event.x;
  y = event.y;
}
else // Firefox method to get the position
 {
     x = event.clientX + document.body.scrollLeft +
        document.documentElement.scrollLeft;
      y = event.clientY + document.body.scrollTop +
      document.documentElement.scrollTop;
     }

x -= canvas.offsetLeft;
y -= canvas.offsetTop;

    alert("x: " + x + "  y: " + y);
  }

</script>
于 2013-07-02T11:32:02.517 回答
1

试试这个,

@Override
public void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    final TextView textView = (TextView)findViewById(R.id.textView);
    // this is the view on which you will listen for touch events
    final View touchView = findViewById(R.id.touchView);
    touchView.setOnTouchListener(new View.OnTouchListener() {
        @Override
        public boolean onTouch(View v, MotionEvent event) {
            textView.setText("Touch coordinates : " +
                String.valueOf(event.getX()) + "x" + String.valueOf(event.getY()));
                return true;
        }
    });
}
于 2013-07-02T11:28:13.600 回答