In questo momento tutto ciò che sto tentando di fare è rilevare quando lo schermo viene premuto e quindi visualizzare un messaggio di registro per confermare che è successo. Il mio codice finora è stato modificato dal codice di esempio di CameraPreview (alla fine farà una foto) in modo che la maggior parte del codice si trovi in una classe che estende SurfaceView. API per il codice di esempio dell'SDK è 7.Come posso rilevare l'input tattile su Android
9
A
risposta
19
Prova il codice qui sotto per rilevare gli eventi di tocco.
mView.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
//show dialog here
return false;
}
});
Per mostrare la finestra di dialogo utilizzare il metodo Attività showDialog(int). Devi implementare onCreateDialog(). Vedi la documentazione per i dettagli.
4
ho fatto in questo modo:
public class ActivityWhatever extends Activity implements OnTouchListener
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.yourlayout);
//the whole screen becomes sensitive to touch
mLinearLayoutMain = (LinearLayout) findViewById(R.id.layout_main);
mLinearLayoutMain.setOnTouchListener(this);
}
public boolean onTouch(View v, MotionEvent event)
{
// TODO put code in here
return false;//false indicates the event is not consumed
}
}
nel xml della visualizzazione, specificare:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/layout_main">
<!-- other widgets go here-->
</LinearLayout>
13
Ecco un semplice esempio su come rilevare un semplice sul touch evento, ottenere coordinate e mostra un brindisi. L'evento in questo esempio è Action Down, Move e Action up.
import android.app.Activity;
import android.os.Bundle;
import android.view.MotionEvent;
import android.widget.Toast;
public class MainActivity extends Activity {
private boolean isTouch = false;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public boolean onTouchEvent(MotionEvent event) {
int X = (int) event.getX();
int Y = (int) event.getY();
int eventaction = event.getAction();
switch (eventaction) {
case MotionEvent.ACTION_DOWN:
Toast.makeText(this, "ACTION_DOWN AT COORDS "+"X: "+X+" Y: "+Y, Toast.LENGTH_SHORT).show();
isTouch = true;
break;
case MotionEvent.ACTION_MOVE:
Toast.makeText(this, "MOVE "+"X: "+X+" Y: "+Y, Toast.LENGTH_SHORT).show();
break;
case MotionEvent.ACTION_UP:
Toast.makeText(this, "ACTION_UP "+"X: "+X+" Y: "+Y, Toast.LENGTH_SHORT).show();
break;
}
return true;
}
}
Problemi correlati
- 1. Come posso rilevare il supporto tattile del dispositivo in JavaScript?
- 2. Come posso rilevare se un evento tattile è atterrato in un EditText?
- 3. Come simulare l'evento tattile?
- 4. Come posso rilevare le modifiche su% ENV?
- 5. Come posso rilevare disconnessioni su socket.io?
- 6. Come rilevare foto scure su Android
- 7. Come attivare un evento tattile?
- 8. Come ottenere feedback tattile da RecyclerView?
- 9. Come estendere l'area tattile di una vista
- 10. Come posso rilevare il dpi su un ipad mini?
- 11. Come posso rilevare se l'utente è su localhost in PHP?
- 12. Come posso rilevare un tocco su un'area specifica
- 13. Come posso rilevare Sun/Oracle JRE installato su Windows?
- 14. Android 2.2 - Come posso rilevare se sono installato su SDCard o no?
- 15. Come rilevare quale app è aperta su Android
- 16. Come rilevare il thread dell'interfaccia utente su Android?
- 17. Come estendere un'area tattile del pulsante?
- 18. Android: rilevare gesti fling
- 19. Android: come rilevare se la fotocamera lampeggiava
- 20. Come rilevare overscroll in Android ListView?
- 21. Come posso rilevare l'ambiente di Heroku?
- 22. Come posso abilitare lo zoom su Android?
- 23. Come posso rilevare caratteri non occidentali?
- 24. Come posso rilevare le funzioni Javascript chiamate?
- 25. Come posso rilevare una versione iOS specifica con jquery?
- 26. Come passare l'evento tattile a superview quando userInteractionEnabled = YES?
- 27. Come posso rilevare l'ambiente in Salesforce?
- 28. Come posso rilevare un palindromo in ebraico?
- 29. Come posso rilevare un palindromo in C?
- 30. Come abilitare il feedback tattile sulla vista pulsante