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, 12:41:02
Array

[xs_avatar]
androizado androizado no está en línea
Miembro del foro
 
Fecha de registro: dic 2012
Mensajes: 191
Modelo de smartphone: Nexus 5
Tu operador: Vodafone
Background de botones Action Bar

Buenas tengo un problema y es el siguiente. Tengo en el ActionBar dos botones los cuales son un de busqueda y otro que al pulsar te lleva a un carrito de la compra.

Este es el xml del menu:

Código:
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    tools:context=".main" >
    <item android:id="@+id/action_search"
        android:icon="@drawable/ic_search"
        app:showAsAction="always|collapseActionView"
        app:actionViewClass="android.support.v7.widget.SearchView"
        android:title="@string/action_search"/>
    <item android:id="@+id/action_carrito"
        android:title="@string/action_example"
        android:icon="@drawable/ic_carrito"
        app:showAsAction="always" />
</menu>
El caso es que quiero cambiar el background del botón del carrito y lo que estoy realizando es lo siguiente, en el styles.xml de mi app:

Código:
<resources>
    <!-- Base application theme. -->
    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <!-- Customize your theme here. -->
        <item name="android:actionBarStyle">@style/MyActionBar</item>
        <item name="actionBarStyle">@style/MyActionBar</item>

        <item name="actionButtonStyle">@style/MyActionButtonStyle</item>
        <item name="android:actionButtonStyle">@style/MyActionButtonStyle</item>
    </style>

    <style name="MyActionBar" parent="@android:style/Widget.Holo.Light.ActionBar">
        <item name="android:background">@android:color/white</item>
        <item name="android:textSize">18sp</item>
    </style>

    <style name="MyActionButtonStyle" parent="Theme.AppCompat.Light.DarkActionBar">
        <item name="android:background">@color/darker_green</item>
    </style>

</resources>
Lo señalado es lo referente a lo que estoy haciendo para poner el botón del carrito en verde, el caso es que me lo hace perfecto, pero también le añade al botón de buscar ese background, creo que algo lógico porque le estoy diciendo que "actionButtonStyle", pero habría alguna forma de hacer que solo le de ese color darker_green a ese botón en particular.

Si podéis echarme una mano, gracias de antemano.
Responder Con Cita


  #2  
Viejo 08/11/14, 22:30:04
Array

[xs_avatar]
androizado androizado no está en línea
Miembro del foro
 
Fecha de registro: dic 2012
Mensajes: 191
Modelo de smartphone: Nexus 5
Tu operador: Vodafone
Hola he intentado hacer lo siguiente... Para solucionar esté problema que me surge os dejo el código:

Primeramente decir que he eliminado del archivo styles.xml MyActionButtonStyle, que anteriormente mencionaba.

Archivo action_carrito_bg.xml:
Código:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <shape android:shape="rectangle">
            <solid android:color="@color/darker_green"></solid>
        </shape>
    </item>
    <item>
        <bitmap android:src="@drawable/ic_carrito"/>
    </item>
</layer-list>
Archivo menu.xml:
Código:
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    tools:context=".main" >
    <item android:id="@+id/action_search"
        android:icon="@drawable/ic_search"
        app:showAsAction="always|collapseActionView"
        app:actionViewClass="android.support.v7.widget.SearchView"
        android:title="@string/action_search"/>
    <item android:id="@+id/action_carrito"
        android:title="@string/action_example"
        android:icon="@drawable/action_carrito_bg"
        app:showAsAction="always" />
</menu>
El problema es que si ahora hace lo que deseaba, el color verde lo aplica solo al botón de action_carrito, pero no logro quitar el padding de alrededor, soy un tanto novato, y he podido ver que este padding lo pone como por defecto, si me confundo rectificarme. También he intentado añadir el siguiente código en shape, para que coja el size total del ActionBar.

Código:
<size android:height="@android:attr/actionBarSize" android:width="@android:attr/actionBarSize"/>
Alguien sabe en que me estoy equivocando? Gracias de antemano.
Responder Con Cita
Respuesta

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



Hora actual: 20:44:25 (GMT +2)



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

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