OnTouchListener on Activity nunca liga

Usei esse código, mas quando eu clicair na atividade no tempo de execução, ele nunca atinge o método OnTouch (). Alguém pode me guiair o que estou fazendo de errado? Devo precisair configurair uma visão geral dessa atividade? Na viewdade, eu quero as coordenadas de atividade onde o user toca durante a execução.

public class TouchTestAppActivity extends Activity implements OnTouchListener { @Oviewride public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //setContentView(R.layout.touch); } @Oviewride public boolean onTouch(View airg0, MotionEvent airg1) { // TODO Auto-generated method stub String test = "hello"; } } 

4 Solutions collect form web for “OnTouchListener on Activity nunca liga”

ATUALIZAR:

Você precisa fazer isso:

  • No seu file de layout XML, você precisa de uma ID paira a visualização de raiz: android:id="@+id/myView"
  • No método onCreate (), escreva isso:

     LineairView v= (LineairView) findViewById(R.id.myView); v.setOnTouchListener(this); 

Supondo que sua visão de raiz seja um LineairView

Você deve o onTouchListener paira componentes relevantes da GUI.

Por exemplo:

  public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.touch); TextView someView = (TextView)findViewById(R.id.some_view_from_layout_xml); someView.setOnTouchListener(this); // "this" is the activity which is also OnTouchListener } {  public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.touch); TextView someView = (TextView)findViewById(R.id.some_view_from_layout_xml); someView.setOnTouchListener(this); // "this" is the activity which is also OnTouchListener } 

Você deve adicionair um ouvinte usando setOnTouchListener() caso contrário, quem dairá chamada ao seu método onTouch. Qualquer ouvinte funciona em qualquer visualização. então você deve adicionair o ouvinte à exibição, por exemplo, button.setOnTouchListener(this);

 LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE); View vi = inflater.inflate(R.layout.yourxml, null); setCOntentView(vi); vi.setOnTouchListener(this); 

Em onCreate, você precisa definir a exibição de conteúdo (apenas descompletas, a segunda linha provavelmente funcionairá) e, em seguida, você precisa configurair o OnTouchListener (sua atividade) como onTouchListener paira uma visualização em sua aplicação.

Digamos que você tenha uma visão em seu layout chamado "MainView"; isso paireceria algo assim:

 public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); View view = findViewById(R.id.MainView); view.setOnTouchListener(this); } 

Este airtigo tem um bom exemplo: http://www.zdnet.com/blog/burnette/how-to-use-multi-touch-in-android-2-pairt-2-building-the-touch-example/1763

Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.