Balanceo horizontal en stackview
Estoy en una aplicación que requiere stackview. Pero tengo que implementar el desplazamiento horizontal para cambiar entre los elementos de vista de pila y la interfaz de usuario se ve como de uno normal. Por favor, ayúdame a hacerlo.
Ya he comprobado este enlace .
- ¿Cómo burlar el método de Bundle en Android Unit-Test?
- ¿Cómo mantener la consistencia con XML drawables a través de diferentes tamaños de pantalla?
- ¿Cómo leer un archivo AndroidManifest.xml (en binario)?
- Android: el botón rápido presiona resultados en múltiples instancias de intención
- La conexión a LocalHost / 10.0.2.2 de Android Emulator ha caducado
Pero en él la interfaz de usuario es sólo un flujo de portada. Quiero hacer que la interfaz de usuario se vea igual que stackview.
- ¿Cuáles son las maneras de generar programáticamente conjuntos de colores de Material Design?
- Borrar la actividad de la pila en el botón Atrás presionado
- Señal fatal 11 (SIGSEGV) en 0x00000000 (código = 1) - PhoneGap
- Detección de silencio de captura de audio de Android
- ViewPager.setOffscreenPageLimit (0) no tiene ningún efecto en absoluto. ¿Cómo puedo cargar una página a la vez en un ViewPager?
- GreenDao getter para entidades relacionadas devuelve lista vacía
- Cómo desplazamiento mediante programación de un ScrollView a inferior
- El envío de entrada de ANR excedió el tiempo de espera en Android 4.4
Creo una vista de pila personalizada
public class custom_stackview extends StackView{ float x1, x2, y1, y2, dx, dy; public custom_stackview(Context context, AttributeSet attrs) { super(context, attrs); // TODO Auto-generated constructor stub } public custom_stackview(Context context) { super(context); // TODO Auto-generated constructor stub } @Override public boolean onTouchEvent(MotionEvent event) { // TODO Auto-generated method stub super.onTouchEvent(event); switch(event.getAction()) { case(MotionEvent.ACTION_DOWN): x1 = event.getX(); y1 = event.getY(); break; case(MotionEvent.ACTION_MOVE): case(MotionEvent.ACTION_UP) :{ x2 = event.getX(); y2 = event.getY(); dx = x2 - x1; dy = y2 - y1; // Use dx and dy to determine the direction if (Math.abs(dx) > Math.abs(dy)) { if (dx > 0) {// direction = "right"; showNext(); } else { showPrevious(); } } } // Log.v("hiiiiiiiiiii", direction+re); } return true; } @Override public boolean onInterceptTouchEvent(MotionEvent event) { // TODO Auto-generated method stubLog.v("hiiiiiiiiiii","touched"); Log.v("hiiiiiiiiiii","toucheddddddddd"); //boolean re =false; return false; } }
usar como
<package_name.custom_stackview android:id="@+id/stackview" android:layout_height="wrap_content" android:layout_width="match_parent" android:loopViews="true" />
No doy código fuente, pero creo que este enlace ayuda
http://docs.huihoo.com/android/3.0/resources/samples/StackWidget/
http://www.broculos.net/2011/12/android-101-how-to-create-stackview.html#.UrmOoPuJQ8Y
Gracias
Recientemente me encontré con un gran pequeño hack para esto. En su uso XML de la disposición:
<StackView android:animateLayoutChanges="true" android:layout_width="match_parent" android:layout_height="match_parent" android:rotation = "-90" />
Luego, dentro del XML del elemento:
<ImageView android:layout_width="match_parent" android:layout_height="match_parent" android:rotation = "90" />
Usted puede jugar con los números para cambiar la dirección sin embargo usted necesita.
- Métodos obsoletos, cómo puedo reemplazarlo por nuevos
- Estudio de Android que no reconoce la biblioteca de Facebook