2011-01-27 33 views
10

Aquí está mi diseño:Touch dos puntos de vista a la vez en android

<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" > 

    <SeekBar 
     android:id="@+id/seekBar1" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     /> 
    <TextView 
     android:id="@+id/textView1" 
     android:layout_width="fill_parent" 
     android:layout_height="60dip"> 
     </TextView> 
    <SeekBar 
     android:id="@+id/seekBar2" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     /> 
</LinearLayout> 

Quiero ser capaz de mover las dos SeekBars (que estaré utilizando como controles deslizantes), al mismo tiempo, cada uno con un diferente dedo, pero al mismo tiempo.

¿Cómo puedo lograr esto?

+0

No es una respuesta, pero quería señalar que solo es necesario definir su esquema una vez. En tu XML tienes tres declaraciones de 'xmlns: android'. – kcoppock

+0

Bueno, el gran problema que veo en el uso de multitouch es lo mismo que por qué el dos dedos no funciona en la mayoría de los dispositivos Android, la mayoría de ellos tienen capacidades multitáctiles limitadas para pellizcar y hacer zoom, pero nada más ... hay que tener eso en cuenta cuando se desarrolla en un dispositivo htc --- tampoco una respuesta. Video con demostración: http://www.youtube.com/watch?v=7rOgFX1-EwE – Jaro

+1

@kcoppock: jaja, sí, aplausos por señalar eso. Primero agregué el SeekBar y luego copié el segundo y agregué un LinearLayout que me dejó con los tres. Editando ahora ...: P – neildeadman

Respuesta

3

This puede ayudar (al otro lado de toques que parten visitas)

1

Por defecto, probablemente no sea posible. Debes definir tu propio tipo de vista. Sin mirar demasiado sobre cómo se manejan los eventos. Si los eventos táctiles provienen de la vista principal. Intentaré anular un LinearLayout y darle la capacidad de manejar el punto de toque múltiple. De esta forma, puede agregar tantas barras de desplazamiento y funcionará con el límite del punto de contacto que su pantalla puede manejar.

2

Usted tendría que manejar eventos de toque a ti mismo. Con la API de múltiples punteros (por ejemplo, multitáctil), es muy fácil. Simplemente anule el método onTouchEvent() o registre OnTouchListener en sus botones.

pero recuerde soporte multitouch sólo en la versión 2.0 o superior

Para más información puede consultar This question already asked

2

instancia su interior Vistas Fragments. ¡Hecho!

Puede ver este comportamiento en acción al desplazarse simultáneamente por una lista de correo electrónico y un correo electrónico en la aplicación de Gmail en un dispositivo Honeycomb o Ice Cream Sandwich.

0

Intente cambiar el minimumSdk a '11' funcionó para mí.

Cuestiones relacionadas