Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android

Respuesta
 
Herramientas
  #1  
Viejo 07/11/14, 11:28:13
Array

[xs_avatar]
joselehhh joselehhh no está en línea
Usuario muy activo
· Votos compra/venta: (3)
 
Fecha de registro: jun 2011
Localización: Toledo
Mensajes: 1,111
Modelo de smartphone: Xiaomi Redmi Note 4 global 3/32
Tu operador: Vodafone
Tabs en action bar - Pantalla horizontal

Buenas,
Actualizando estos días una sencilla app que hice a material design, me he encontrado con un problemilla que no se como solucionar.

Antes yo tenía un tabhost con dos tabs, al querer actualizar el diseño, vi que las tabs ahora se integraban con el ActionBar quedando como un todo en uno. Cambié entonces la forma de crear mis tabs, pasando de un tabhost a dos fragments:
En el tablistener instancio los fragments
Código:
 ActionBar actionBar = getSupportActionBar();
        actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
        actionBar.setTitle(R.string.activity_main_title);
        actionBar.setDisplayShowTitleEnabled(true);
        Tab tab = actionBar.newTab()
                .setText("2x2")

                .setTabListener(new TabListener<Tab1>(
                        this, "2x2", Tab1.class));
        actionBar.addTab(tab);

        tab = actionBar.newTab()
                .setText("3x3")
                .setTabListener(new TabListener<Tab2>(
                        this, "3x3", Tab2.class));
        actionBar.addTab(tab);
El caso es que la vista en el modo vertical es correcta (dejo las capturas) pero en horizontal los tabs se quedan en la misma línea que el label del actionbar y no se representan bien.

A ver si alguien puede guiarme o algo. Muchas gracias!
Imágenes Adjuntas
Tipo de Archivo: jpg portrait.JPG (13.7 KB, 23 visitas)
Tipo de Archivo: jpg landscape.JPG (16.8 KB, 24 visitas)
__________________
Mis apps en Google Play.
Responder Con Cita


  #2  
Viejo 10/11/14, 15:52:09
Array

[xs_avatar]
joselehhh joselehhh no está en línea
Usuario muy activo
· Votos compra/venta: (3)
 
Fecha de registro: jun 2011
Localización: Toledo
Mensajes: 1,111
Modelo de smartphone: Xiaomi Redmi Note 4 global 3/32
Tu operador: Vodafone
Lo subo por si alguien tiene una ligera idea de lo que puede ser. Muchas gracias!
__________________
Mis apps en Google Play.
Responder Con Cita
  #3  
Viejo 15/11/14, 23:26:41
Array

[xs_avatar]
LEAJIM_454 LEAJIM_454 no está en línea
Miembro del foro
 
Fecha de registro: nov 2012
Mensajes: 215
Modelo de smartphone: Galaxy Ace
Tu operador: Otra
Para ayudarte supongo que deverias poner el el xml de tu layout donde está el tab y estas seguro que no tienes un dos layouts? tal ves en uno de esos dice en layout_width="wrap_content" en ves de "match_parent", estoy casi seguro que no es problema de codigo java sino mas bien de tu layout... saludos.
Responder Con Cita
  #4  
Viejo 16/11/14, 01:15:00
Array

[xs_avatar]
joselehhh joselehhh no está en línea
Usuario muy activo
· Votos compra/venta: (3)
 
Fecha de registro: jun 2011
Localización: Toledo
Mensajes: 1,111
Modelo de smartphone: Xiaomi Redmi Note 4 global 3/32
Tu operador: Vodafone
Hola, gracias por la respuesta.

Antes usaba un tabhost que tenía definido en un layout desde el cual incluía los dos tabs como otros dos layouts diferentes.
include tab1.xml
include tab2.xml

Pero ahora me he puesto a actualizar la app para ver que tal quedaba con el nuevo estilo Material design y vi que los tabs iban integrados en el action bar de forma que con el código que puse en el primer mensaje se crean los tabs.

Lo único que tengo en un xml es la personalización del estado de selección y pulsación de las tabs como un drawable. No se porqué en horizontal se quedan los tabs como embebidos en una línea.

He visto algunas cosas por stackoverflow pero no me han dado resultado, así que no se realmente que puede ser.

Un saludo!
__________________
Mis apps en Google Play.
Responder Con Cita
  #5  
Viejo 25/11/14, 19:30:25
Array

[xs_avatar]
joselehhh joselehhh no está en línea
Usuario muy activo
· Votos compra/venta: (3)
 
Fecha de registro: jun 2011
Localización: Toledo
Mensajes: 1,111
Modelo de smartphone: Xiaomi Redmi Note 4 global 3/32
Tu operador: Vodafone
Mirando los stilos encontre que tenía estas dos líneas:

Código:
<style name="AppTheme.Base" parent="Theme.AppCompat.Light.DarkActionBar">
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimary</item>
        <item name="android:windowNoTitle">true</item>
 <item name="actionBarTabStyle">@style/AppTheme.ActionBarTabStyle</item>
        <item name="android:actionBarTabStyle">@style/AppTheme.ActionBarTabStyle</item>

    </style>
Eliminé
Código:
 <item name="actionBarTabStyle">@style/AppTheme.ActionBarTabStyle</item>
y ahora no es que se haya solucionado del todo, pero por lo menos en horizontal hay mas espacio entre las tabs. Otra cosa que he visto es que si inicio la app teniendo el móvil en horizontal, si que se representa bien, es decir, alineado con el título, con espacio suficiente entre las tabs y con la barrita de color que indica el estado selected. Si la inicio en vertical y luego lo pongo en horizontal, los tabs mantienen suficiente espacio entre ellos pero no parecen estar alineados con el título, como pasaba con las capturas de arriba, como tampoco se muestra la barrita que indica cual está seleccionada...
__________________
Mis apps en Google Play.
Responder Con Cita
Respuesta

Estás aquí
Regresar   Portal | Indice > Todo sobre Android > Programación y Desarrollo para Android



Hora actual: 07:23:04 (GMT +1)



User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.

Contactar por correo / Contact by mail / 邮件联系 /