检测Android中的触摸位置[重复]

Posted

技术标签:

【中文标题】检测Android中的触摸位置[重复]【英文标题】:Detect touch position in Android [duplicate] 【发布时间】:2013-06-29 17:57:09 【问题描述】:

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

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

【问题讨论】:

【参考方案1】:

如果使用 PhoneGap 您可以使用 html/JS。 参考下面

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

<style type="text/css">

#canvasbackground-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>

【讨论】:

【参考方案2】:

试试这个,

@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;
        
    );

【讨论】:

以上是关于检测Android中的触摸位置[重复]的主要内容,如果未能解决你的问题,请参考以下文章

在 UIScrollView 仍处于活动状态的情况下检测视图中的连续触摸位置

Google Maps Android API v2 - 检测地图上的触摸

Android:检测 ScrollView 何时停止滚动

Android中的错误“只有创建视图层次结构的原始线程才能触摸其视图”[重复]

检测触摸并按住屏幕iPhone(Xcode)[重复]

在带有触摸屏的 Windows 8 上检测 Chrome 中的触摸事件