2012-02-14 24 views
12

Estoy usando la barra de acción sherlok e intento aplicar un divisor entre los botones de acción. Tengo el estilo th pero los divisores no son visibles, ¿por qué?Android actionbar sherlok no muestra el divisor

<style name="Theme.SherlockCustom" parent="@style/Theme.Sherlock.Light"> 
    <item name="abBackground">@drawable/actionbar_gradient</item> 
    <item name="abIcon">@drawable/logo</item>  
    <item name="abDivider">@drawable/ab_divider</item> 
</style> 

Gracias!

Respuesta

22

ActionBarSherlock v3.5 se actualizó para incluir las fuentes de Ice Cream Sandwich para todas las clases y vistas relacionadas con elementos de acción. Esto significa que las reglas para colocar un divisor entre dos elementos de acción siguen las mismas reglas que en ICS.

Un divisor se mostrarían solamente entre los siguientes:

  • sólo texto seguido de sólo texto
  • Icono de sólo seguido de sólo texto
  • texto y el icono seguido de sólo texto

Si desea anular este comportamiento (en la pre-3.0 sólo) realice el siguiente cambio a ActionItemView.java:

+0

Gracias, yo no podía esperar para una mejor respuesta! – TOMKA

+0

¿Por qué las aplicaciones de Google Android muestran separadores entre iconos? ver la aplicación de YouTube –

+0

porque usan su propia biblioteca. –

9

Lo que puede hacer es añadir una vista al lado del elemento actionbar que se verá como el separador (funciona en todas las versiones de Android)

<item 
    android:actionViewClass="com.example.ActionSeparatorView" 
    android:showAsAction="always" 
    android:title="@null"/> 

y la ActionSeparatorView es una simple extensión de la ImageView con el dibujable que desea mostrar como un separador

public class ActionSeparatorView extends ImageView { 
public ActionSeparatorView (Context context) { 
    super(context); 
    setImageDrawable(getResources().getDrawable(R.drawable.separator)); 
    } 
} 
+1

Funciona como un encanto. solo amor por ti (Y) – Farhan

+0

He intentado utilizar este enfoque, pero aparece un separador que aumenta mucho espacio entre los elementos del menú. – Signcodeindie

Cuestiones relacionadas