2017-08-07 102 views
0

我可以在我的处理程序中读取触摸屏输入吗?Android - 在Loop/Handler中读取触摸屏?

  final Handler handler=new Handler(); 
      final int[] A = new int[1]; 
      X[0] =0; 
      handler.post(new Runnable() { 


       @Override 
       public void run() { 

       If Touch B = True etc Else B = False 
       int X[0] = getX(); 

        TXT.setText(String.format("%d", X[0], B)); 
          image.setImageResource(R.drawable.android); 
        image.setX(300+ A[0]); 
        handler.postDelayed(this, 10); 

看起来你的帖子主要是代码;请添加一些细节

+1

什么是 “阅读的触摸屏输入” 呢?您可以通过回调获得触摸事件[例如'onTouchEvent()'](https://developer.android.com/reference/android/app/Activity.html#onTouchEvent(android.view.MotionEvent))。 – CommonsWare

+0

所以我可以在循环内GetX坐标是可能的吗? –

回答

0

不,这是不可能的。您通过回拨方法收到触摸事件such as onTouchEvent()

+0

我有它的工作,所以它似乎是? –

+0

@MharlesCanson:这似乎不太可能。但是,当然欢迎您回答您自己的问题,并提供您所做的工作的示范,以使其他人受益。 – CommonsWare

0

当然

final View touchView = findViewById(R.id.Laydown); 
      handler.post(new Runnable() { 


       @Override 
       public void run() { 


        layot.setOnTouchListener(new View.OnTouchListener() { 

         @Override 
         public boolean onTouch(View v, MotionEvent event) { 
          TXT.setText("Touch coordinates : " + String.valueOf(event.getX()) + "x" + String.valueOf(event.getY())); 
          return true; 
         } 
        }); 


        handler.postDelayed(this, 100);