android 2 traducido

Post on 03-Jul-2015

125 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

ayuda para los de mas

TRANSCRIPT

Android

Adición de la barra de acción

La barra de acción es uno de los elementos de diseño másimportantes que usted puede implementar para las actividadesde su aplicación.

Ofrece varias características de la interfaz de usuario quehacen que su aplicación inmediatamente familiar para losusuarios, ofreciendo consistencia entre otras aplicaciones deAndroid. Las funciones clave incluyen:

Un espacio dedicado a dar a su aplicación de una identidad yque indica la ubicación del usuario en la aplicación.

El acceso a las acciones importantes en una forma predecible(como Buscar).

El apoyo a la navegación y la vista de conmutación (confichas o listas desplegables).

Configuración de la barra de acción

En su forma más básica, la barra de acción muestra el título de laactividad y el icono de la aplicación a la izquierda.

Incluso en esta forma simple, la barra de acción es útil para todas lasactividades para informar a los usuarios acerca de dónde están y paramantener una identidad coherente para su aplicación.

Figura 1.

Una barra de acción conel icono de la aplicación yel título de la actividad.

La creación de una barra de acción básica requiere que suaplicación utiliza un tema de la actividad que permite a la barrade acción.

Cómo solicitar un tema de este tipo depende de qué versión deAndroid es el más bajo con el apoyo de su aplicación.

Así que esta lección se divide en dos secciones, dependiendode qué versión de Android es su mínimo admitido.

Soporte para Android 3.0 y superior.

Comenzando con Android (nivel de API 11) 3.0, la barra de acción seincluye en todas las actividades que utilizan el Theme.Holo tema (ouno de sus descendientes), que es el tema por defecto cuando seaeltargetSdkVersion o minSdkVersion atributo se establece en "11 " omayor

Así que añadir la barra de acción para sus actividades, basta conestablecer ya sea atributo a 11 o superior.

Por ejemplo:

<Manifiesto... >

<utiliza-sdk android: minSdkVersion = "11"...

/>

...

</ manifest>

NOTA:

Si ha creado un tema personalizado, asegúrese de que utilizauno de los Theme.Holo temas como su padre. Para obtenermás información, consulte Aplicar estilos a la barra de acción.

Ahora el Theme.Holo tema se aplica a su aplicación y todaslas actividades muestran la barra de acción.

Soporte para Android 2.1y superiores.

Adición de la barra de acciones, cuando se ejecutan enversiones anteriores a Android 3.0 (frente a Android 2.1), debeincluir la biblioteca de compatibilidad de Android en suaplicación.

Para empezar, lea la configuración de biblioteca de soporte dedocumentos y establecer el appcompat v7biblioteca (una vezque haya descargado el paquete de biblioteca, siga lasinstrucciones para la Adición de bibliotecas con recursos).

Una vez que tenga la biblioteca de compatibilidad integrada con suproyecto de aplicación:

Actualizar su actividad para que se extienda ActionBarActivity . Porejemplo:

público de clase MainActivity extiende

ActionBarActivity { ... }

En el archivo de manifiesto, o bien actualizarel <application> elemento o individuales <activity>elementos parautilizar uno de los Theme.AppCompat temas.

Por ejemplo:

<Actividad android: tema = "@ style / Theme.AppCompat.Light" ... >

Nota:

Si ha creado un tema personalizado, asegúrese de que utilizauno de los Theme.AppCompat temas como su padre.

Para obtener más información, consulte Aplicar estilos a labarra de acción.

Ahora su actividad incluye la barra de acción cuando se ejecuta en Android 2.1 (nivel de API 7) o más.

Recuerde que debe configurar correctamente el apoyo a nivel de la API de su aplicación en el manifiesto:

Manifiesto ... > <utiliza-sdk android: minSdkVersion = "7" el androide: targetSdkVersion = "18" /> ...

</ manifest>

Adición de botones de acción

La barra de acción le permite añadir botones para los elementos deacción más importantes en relación con el contexto actual de laaplicación. Los que aparecen directamente en la barra de accióncon un icono y / o texto que se conoce como botones de acción.

Las acciones que no caben en la barra de acción o no son losuficientemente importantes están ocultos en el desbordamiento dela acción.

Figura 1.

Una barra de acción con un botón deacción para la búsqueda y eldesbordamiento de la acción, lo querevela las acciones adicionales.

Especificar las acciones en XML.

Todos los botones de acción y otros artículos disponibles en eldesbordamiento de acción se definen en un XMLrecurso demenú.

Para agregar acciones a la barra de acción, crear un nuevoarchivo XML en su proyecto / res / menú guía.

Añadir un <item> elemento de cada artículo que deseaincluir en la barra de acción. Por ejemplo:

res / menu / main_activity_actions.xml

<Menú xmlns: android = "http://schemas.android.com/apk/res/android" >

! <- Búsqueda, deberían aparecer como botón de acción

Configuración, siempre deben estar en el desbordamiento

Iconos de la barra de descarga de acción.

Para adaptarse mejor a los Androidiconografía directrices, debeutilizar los iconos proporcionados en la Barra de acción Icon Pack.

Esto declara que la acción de Búsqueda debe aparecer como unbotón de acción cuando la habitación está disponible en la barra deacción, pero la acción Configuración debe aparecer siempre en eldesborde.

(De manera predeterminada, todas las acciones aparecen en eldesborde, pero es una buena práctica declarar explícitamente susintenciones de diseño para cada acción.)

El icono de atributo requiere un identificador de recurso para una

imagen.

E l nombre que s igue @ est i rab le / debe ser e l nombrede una imagen de mapa de b i ts que haya guardado ensu proyecto / res est i rab le /d i rector io .

Por ejemplo, "@ estirable / ic_act ion_search" seref iere a ic_act ion_search.png .

As imismo, e l t í tu lo at r ibuto ut i l i za un recurso decadena que se def ine por un arch ivo XML en suproyecto / va lores res / d i rector io, como se d iscuteen La construcc ión de una inter faz de usuar io senc i l l a .

Nota:

Al crear iconos y otras imágenes de mapa de bits para suaplicación, es importante que usted proporciona múltiplesversiones que están cada uno optimizado para una densidadde pantalla diferente.

Esto se discute más en la lección sobre el apoyo a diferentespantallas.

Si su apl icac ión está ut i l i zando la b ib l ioteca

de soporte para la compat ib i l idad con

vers iones tan bajas como Andro id 2.1,

e l showAsAct ion atr ibuto no está d isponib le

en el android: espacio de nombres.

En lugar de este atr ibuto es proporc ionada por la

Bib l ioteca Soporte y debe def in i r su prop io

espacio de nombres XML y el uso de ese espacio

de nombres como pref i jo de atr ibuto.

(Un espacio de nombres XML personal izado sedebe basar en el nombre de la ap l icac ión, peropuede ser cualquier nombre que desee y sólo sepuede acceder dentro del ámbito del arch ivo enel que se declara.)

Por ejemplo.res / menu / ma in_ac t i v i ty_ac t ions .xml

<menu xmlns:andro id =

"h t tp : / / schemas .andro id . com/ apk/ res /andro id "

xmlns:yourapp =

"http://schemas.andro id .com/ apk/res-auto" >

<! - - Search , debe aparecer como botón de acc ión - ->

< i tem andro id : id = "@+id/ac t ion_search "

andro id : i con = "@drawab le / i c_ac t ion_search "

andro id : t i t l e = "@st r ing/ac t ion_search "

yourapp:showAsAct ion = " i fRoom" />

. . .

</menu>

Agregue las acciones de la barra de acción.

Para colocar los elementos de menú en la barra de acción, poner en práctica el onCreateOptionsMenu () método de devolución de llamada en su actividad para inflar el recurso de menú en el dado Menu objeto.

Por ejemplo

@ Over r ide

púb l i ca boo lean onCrea teOpt ionsMenu ( Menu menu ) {

/ / In f l a r l os e lementos de menú para su uso en l a

acc ión bar

MenuIn f l a te r in f l a te r = getMenuIn f l a te r ( ) ;

i n f l a te r . i n f l a te ( R . menu . ma in_ac t i v i ty_ac t ions ,

menu ) ;

re tu rn super . onCreateOpt ionsMenu ( menu ) ;

}

Responder a los botones de acción.

Cuando e l usuar io pulsa uno de los botones de acc ión

u otro e lemento en e l desbordamiento de la acc ión, e l

s istema l lama de su act iv idad onOpt ionsItemSelected

() método de devoluc ión de l lamada .

En la implementac ión de este método, l lame GetItemID () sobre la propuesta MenuItem para determinar qué e lemento se ha pulsado e l ID devuelto coinc ide con e l va lor dec larado en la correspondiente <item> del e lemento android: id atr ibuto.

@ Override pública boolean onOptionsItemSelected ( MenuItem elemento) {

prensas / / manipulador de la barra de acción items switch ( item . getItemId ()) {

case R . id . action_search : openSearch (); return true ;

case R . id . action_settings : openSettings (); return true ;

default : return super . onOptionsItemSelected ( item );

} }

Añadir el Botón de bajo nivel Actividades.

Figura 4. El Up botón en Gmail.

Todas las pantallas en su aplicación que no son la entrada principal de su aplicación (actividades que no son de la pantalla "home") deben ofrecer al usuario una forma de navegar a la pantalla de matriz lógica en la jerarquía de la aplicación pulsando el Up botón de la acción bar.

Cuando se ejecuta en Andro id 4.1 (n ive l de API 16) omás alta, o cuando se ut i l i za Act ionBarAct iv i ty de labib l ioteca de soporte, real izando hasta la navegac ións implemente requiere que se declara la act iv idad delos padres en el arch ivo de mani f iesto y se habi l i ta e lUp botón de la barra de acc ión.

Por ejemplo<Aplicación ... >

... <- La actividad principal / home (que no

tiene actividad de los padres) -> <actividad

android: nombre = "com.example.myfirstapp.MainActivity" ... >

... </ actividad> <- Un niño de la actividad principal

Actividad de Padres meta-datos para apoyar 4.0 e inferiores

así es como se puede declarar el padre de una actividad en el

manifiesto:

Luego que el icono de la aplicación que el Up botón llamando setDisplayHomeAsUpEnabled ():

@Override

public void onCreate ( Bundle savedInstanceState ) {

super . onCreate ( savedInstanceState );

setContentView ( R . layout . activity_displaymessage );

getSupportActionBar (). setDisplayHomeAsUpEnabled ( true

);

// Si su minSdkVersion es 11 o superior, en lugar de usar:

/ / getActionBar () setDisplayHomeAsUpEnabled (true);.

}

Debido a que el s istema sabe ahora MainAct iv i ty es

la act iv idad pr inc ipa l para Disp layMessageAct iv i ty ,

cuando el usuar io pu lsa e l Up botón, e l s istema se

desplaza a la act iv idad de los padres según el

caso-que nonecesi ta para manejar e l hasta e l

evento del botón.

El estilo de la barra de acción.

La barra de acc ión ofrece a los usuar ios una manera

fami l i a r y predec ib le para rea l i zar acc iones y navegar

por su ap l i cac ión, pero eso no qu iere dec i r que t iene

que ser exactamente la misma que lo hace en otras

ap l i cac iones .

Si qu ieres est i l i zar la barra de acc ión para a justarse

mejor a la marca de l producto, puede hacer lo fác i lmente

ut i l i zando Andro id de est i l o y tema recursos .

Android incluye algunos temas incorporados en actividades

que incluyen "oscuro" o "light" estilos de barra de acción.

También puede ampliar estos temas para personalizar aún

más el aspecto de la barra de acción.

Nota:

Si está ut i l i zando la b ib l ioteca API de Apoyo a la

barra de acc ión, entonces debe usar (o anular)

laTheme.AppCompat fami l ia de est i los (en lugar

de la Theme.Holo fami l ia, d isponib les en el n ive l

de API 11 y super ior) .

De es te modo, cada prop iedad de es t i l o que se dec la ra

debe ser dec la rado en dos ocas iones : una vez u t i l i zando las

prop iedades de la p la ta fo rma de es t i l o

(e l andro ide : prop iedades ) y una vez con e l es t i l o de las

prop iedades inc lu idas en la b ib l i o teca de sopor te

( los appcompat .R .a t t r p rop iedades de l con tex to para es tas

prop iedades es en rea l i dad su ap l i cac ión) .

Vea los e jemp los a con t inuac ión para obtener más deta l l es .

Utilice un Tema Android.

Andro id inc luye dos temas de las act iv idades in i c ia les

que determinan e l co lor de la barra de acc ión:

Theme.Ho lo para un tema de "oscuro" .

Theme.Ho lo.L ight para un tema de la " luz" .

Puede ap l i car es tos temas a la tota l idad de su ap l i cac ión

o para act iv idades ind iv idua les que dec la ró en su arch ivo

de man i f i es to con e l andro ide: tema atr ibuto para

la <app l i cat ion> elemento o

ind iv idua les <act iv i ty> e lementos .

Por ejemplo:

<Aplicación android: tema = "@ android: style / Theme.Holo.Light" ... />

También puede utilizar una barra de acción oscura, mientras que el

resto de la actividad utiliza el esquema de color de la luz por la que se

declara laTheme.Holo.Light.DarkActionBar tema.

Cuando se utiliza la biblioteca de soporte, debe utilizar en su lugar

los Theme.AppCompat temas.

Theme.AppCompat para el tema "oscuro".

Theme.AppCompat.Light para el tema de la "luz".

Theme.AppCompat.Light.DarkActionBar para el tema de la luz con una

barra de acción oscura.

Asegúrese de que utiliza iconos de la barra de acción que

contrastan adecuadamente con el color de tu barra de acción.

Para ayudarle, la Barra de acción Icon Pack incluye iconos de

acción estándar para el uso con la luz Holo Holo y barra de

acción oscura.

Personaliza el fondo.

Para cambiar el fondo barra de acción, crear un tema

personalizado para su actividad que anula

elactionBarStyle propiedad.

Esta propiedad apunta a otro estilo en el que se puede

reemplazar el fondo propiedad para especificar un recurso

estirable para el fondo de la barra de acción.

Para Android 3.0 y superiores.

Cuando el apoyo a Android 3.0 y superiores, se puede definir el fondo de la barra de acción de esta manera:

r e s / v a l o r e s / t h e m e s . x m l

< ? x m l v e r s i o n = " 1 . 0 " c o d i f i c a c i ó n = " U T F - 8 " >

< r e s o u r c e s >

< - e l t e m a a p l i c a d o a l a a p l i c a c i ó n o l a a c t i v i d a d - >

< s t y l e n o m b r e = " C u s t o m A c t i o n B a r T h e m e "

p a d r e = " @ a n d r o i d : e s t i l o / T h e m e . H o l o . L i g h t . D a r k A c t i o n B a r "

>

< n o m b r e d e e l e m e n t o = " a n d r o i d : a c t i o n B a r S t y l e " > @ e s t i l o /

M y A c t i o n B a r < / e l e m e n t o >

< / s t y l e >

! < - B a r r a d e a c c i o n e s e s t i l o s - >

< s t y l e n o m b r e = " " M y A c t i o n B a r

p a d r e = " @ a n d r o i d : s t y l e /

W i d g e t . H o l o . L i g h t . A c t i o n B a r. S o l i d . I n v e r s e " >

< n o m b r e d e e l e m e n t o = " a n d r o i d : F o n d o " > @ e s t i r a b l e /

a c t i o n b a r _ b a c k g r o u n d < / e l e m e n t o >

< / s t y l e >

< / r e s o u r c e s >

A continuación, aplicar el tema a toda la

aplicación o actividades individuales.

<Aplicación android: tema = "@ style / CustomActionBarTheme" ... />

Para Android 2.1 y superior.

Cuando se utiliza la biblioteca de soporte, el mismo tema que el anterior lugar debe tener este aspecto:

• r e s / v a l o r e s / t h e m e s . x m l

• < ? x m l v e r s i o n = " 1 . 0 " c o d i f i c a c i ó n = " U T F - 8 " >

< r e s o u r c e s >

< - e l t e m a a p l i c a d o a l a a p l i c a c i ó n o l a a c t i v i d a d - >

< s t y l e n o m b r e = " C u s t o m A c t i o n B a r T h e m e "

p a d r e = " @ s t y l e / T e m a . A p p C o m p a t . L i g h t . D a r k A c t i o n B a r " >

< n o m b r e d e e l e m e n t o = " a n d r o i d : a c t i o n B a r S t y l e " > @ e s t i l o / M y A c t i o n B a r < / e l e m e n t o >

! < - c o m p a t i b i l i d a d b i b l i o t e c a S o p o r t e - >

< n o m b r e d e e l e m e n t o = " a c t i o n B a r S t y l e " > @ e s t i l o / M y A c t i o n B a r < / a r t í c u l o >

< / s t y l e >

< - B a r r a d e a c c i o n e s e s t i l o s - > !

< s t y l e n o m b r e = " M y A c t i o n B a r "

p a d r e = " @ s t y l e / W i d g e t . A p p C o m p a t L i g h t . A c t i o n B a r . S o l i d . I n v e r s e . " >

< n o m b r e d e e l e m e n t o = " a n d r o i d : F o n d o " > @ e s t i r a b l e / a c t i o n b a r _ b a c k g r o u n d < /

e l e m e n t o >

< - S o p o r t e b i b l i o t e c a d e c o m p a t i b i l i d a d - >

< n o m b r e d e e l e m e n t o = " b a c k g r o u n d " > @ e s t i r a b l e / a c t i o n b a r _ b a c k g r o u n d < / e l e m e n t o >

< / s t y l e >

< / r e s o u r c e s >

A continuación, aplicar el tema a toda laaplicación o actividades individuales.

<Aplicación android: tema = "@ style / CustomActionBarTheme" ... />

Personaliza el color de texto

Para modi f i car e l co lor de l texto en la barra de acc ión, es

necesar io reemplazar las prop iedades por separado para

cada e lemento de texto:

Tí tu lo de la barra de acc ión: Crear un est i l o

persona l i zado que espec i f i ca e l textCo lor prop iedad y

espec i f i car que e l est i l o para e l T i t l eTextSty le prop iedad

en su aduana act ionBarSty le .

Nota

E l est i l o persona l i zado ap l i cado T i t l eTextSty le debe

ut i l i zarTextAppearance.Ho lo.Widget .Act ionBar.T i t l e co

mo e l est i l o de los padres.

Lengüetas de la barra de acc ión:

Ignorar act ionBarTabTextSty le en su tema de la

act iv idad.

Botones de acc ión: Ignorar act ionMenuTextCo lor en

su tema de la act iv idad.

Para Android 3.0 y superiores

Cuando el apoyo a Andro id 3.0 y super iores, e l

arch ivo XML de est i lo puede tener este aspecto:

res / valores / themes.xml

<? xml version = "1.0" codificación = "UTF-8" >

<resources>

<- el tema aplicado a la aplicación o la actividad ->

<style nombre = "CustomActionBarTheme"

padre = "@ style / Tema. Holo " >

< nombre de elemento = "android: actionBarStyle" > @ estilo / MyActionBar </ elemento >

< nombre de elemento = "android: actionBarTabTextStyle" > @ estilo / MyActionBarTabText </ elemento >

< nombre de elemento = "android: actionMenuTextColor" > @ colores / actionbar_text </ elemento >

</ style>

<- - Barra de acciones estilos!>

<style nombre = "MyActionBar"

padre = "@ style / Widget.Holo.ActionBar" >

< nombre del elemento = "android: TitleTextStyle" > @ estilo / MyActionBarTitleText </ elemento >

</ style>

<- Barra de acciones texto del título ->

<style nombre = "MyActionBarTitleText"

padre = "@ style / TextAppearance.Holo.Widget.ActionBar.Title" >

< nombre de elemento = "android: textColor" > @ de color / actionbar_text </ elemento >

</ style>

! <- estilos de texto pestañas Barra de acciones ->

<style nombre = "MyActionBarTabText"

padre = "@ style / Widget.Holo.ActionBar.TabText" >

< nombre de elemento = "android: textColor" > @ de color / actionbar_text </ elemento >

</ style>

</ resources>

Para Android 2.1 y superior .

Cuando se ut i l i za e l soporte para b ib l ioteca, e l

arch ivo XML de est i lo puede tener este aspecto:

res / valores / themes.xml

<? xml version = "1.0" codificación = "UTF-8" > <resources>

<- el tema aplicado a la aplicación o la actividad -> <style nombre = "CustomActionBarTheme"

padre = "@ style / Tema. AppCompat " > < nombre de elemento = "android: actionBarStyle" > @ estilo / MyActionBar </ elemento > < nombre de elemento = "android: actionBarTabTextStyle" > @ estilo / MyActionBarTabText </ elemento > < nombre de elemento = "android: actionMenuTextColor" > @ colores / actionbar_text </ elemento >

<- Soporte biblioteca de compatibilidad -> < nombre del elemento = "actionBarStyle" > @ estilo / MyActionBar </ elemento > < nombre del elemento = "actionBarTabTextStyle" > @ estilo / MyActionBarTabText </ elemento > < nombre de elemento = "actionMenuTextColor" > @ de color / actionbar_text </ elemento >

</ style>

<- Barra de acciones estilos -> <style nombre = "MyActionBar"

padre = ". @ style / Widget AppCompat . Barra de acciones " > < artículo nombre = "android: TitleTextStyle" > @ estilo / MyActionBarTitleText </ elemento >

! <- Soporte biblioteca de compatibilidad -> < nombre de elemento = "TitleTextStyle" > @ estilo / MyActionBarTitleText </ elemento >

</ style>

! <- texto de título Barra de acciones

nombre = "android: textColor" > @ de color / actionbar_text </ elemento > ! <- La propiedad textColor es compatible hacia atrás con la Biblioteca Soporte ->

</ style>

<- texto pestañas Barra de acciones ->! <style nombre = "MyActionBarTabText"

padre = "@ style / Widget. AppCompat ActionBar.TabText. " > < nombre de elemento = "android: textColor" > @ de color / actionbar_text </ elemento > ! <- La propiedad textColor es compatible hacia atrás con el Soporte Biblioteca ->

</ style> </ resources>

Personalizar el indicador Tab.

Para cambiar e l ind i cador que se ut i l i za para las f i chas

de navegac ión, crear un tema de act iv idad que anu la

e l act ionBarTabSty le prop iedad. Esta prop iedad apunta

a otro recurso de est i l o en e l que se reemplaza

e l fondo prop iedad que debe espec i f i car un estado de

la l i s ta est i rab le .

Nota.

Un estado- l i s t d ibujab le es importante para que la

f i cha se lecc ionada actua lmente ind i ca su estado con

un fondo d i ferente a las otras f i chas . Para obtener

más in formac ión acerca de cómo crear un recurso

est i rab le que maneja var ios estados de l botón, lea

la L i s ta Estata l documentac ión .

Nota.

Un estado- l i s t d ibujab le es importante para que la f i cha

se lecc ionada actua lmente ind i ca su estado con un fondo

d i ferente a las otras f i chas . Para obtener más

in formac ión acerca de cómo crear un recurso est i rab le

que maneja var ios estados de l botón, lea la L i s ta

Estata l documentac ión .

Por ejemplo, aquí hay un dibujable estado l ista

que dec lara una imagen especí f ica de fondo para

var ios estados di ferentes de una f icha de la barra

de acc ión:

r e s / e s t i r a b l e / a c t i o n b a r _ t a b _ i n d i c a t o r. x m l

< ? x m l

U N I D O S C U A N D O b o t ó n e s t á s i n p u l s a r - >

< - ! E s t a d o s n o f o c a l i z a d o s

E s t a d o s F o c u s e d ( c o m o c u a n d o s e e n f o c a c o n u n d - p a d o e l c u r s o r d e l

m o u s e )

U n i d o s c u a n d o s e p r e s i o n a e l b o t ó n - >

< - ! E s t a d o s n o f o c a l i z a d o s

E s t a d o s F o c u s e d ( c o m o c u a n d o s e e n f o c a c o n u n d - p a d o el cursor del mouse)

Para Android 3.0 y superiores

Cuando e l apoyo a Andro id 3.0 y super iores , e l arch ivo

XML de est i l o puede tener este aspecto:

r e s / v a l o r e s / t h e m e s . x m l

< ? x m l v e r s i o n = " 1 . 0 " c o d i f i c a c i ó n = " U T F - 8 " >

< r e s o u r c e s >

< - e l t e m a a p l i c a d o a l a a p l i c a c i ó n o l a a c t i v i d a d - >

< s t y l e n o m b r e = " C u s t o m A c t i o n B a r T h e m e "

p a d r e = " @ s t y l e / Te m a . H o l o " >

< n o m b r e d e e l e m e n t o = " a n d r o i d : a c t i o n B a r Ta b S t y l e " > @ e s t i l o /

M y A c t i o n B a r Ta b s < / e l e m e n t o >

< / s t y l e >

< - Ta b s a c t i o n b a r e s t i l o s - > !

< s t y l e n o m b r e = " M y A c t i o n B a r Ta b s "

p a d r e = " @ s t y l e / W i d g e t . H o l o . A c t i o n B a r. Ta b V i e w " >

< - i n d i c a d o r d e t a b u l a c i ó n - >

< n o m b r e d e e l e m e n t o = " a n d r o i d : F o n d o " > @ e s t i r a b l e /

a c t i o n b a r _ t a b _ i n d i c a t o r < / e l e m e n t o >

< / s t y l e >

< / r e s o u r c e s >

Para Android 2.1 y superior.

Cuando se ut i l i za e l soporte para bib l ioteca, e l

arch ivo XML de est i lo puede tener este aspecto:

r e s / v a l o r e s / t h e m e s . x m l

< ? x m l v e r s i o n = " 1 . 0 " c o d i f i c a c i ó n = " U T F - 8 " >

< r e s o u r c e s >

< - e l t e m a a p l i c a d o a l a a p l i c a c i ó n o l a a c t i v i d a d - >

< s t y l e n o m b r e = " C u s t o m A c t i o n B a r T h e m e "

p a d r e = " @ s t y l e / T e m a . A p p C o m p a t " >

< n o m b r e d e e l e m e n t o = " a n d r o i d : a c t i o n B a r T a b S t y l e " > @ e s t i l o / M y A c t i o n B a r T a b s

< / e l e m e n t o >

! < - c o m p a t i b i l i d a d b i b l i o t e c a S o p o r t e - >

< n o m b r e d e e l e m e n t o = " a c t i o n B a r T a b S t y l e " > @ e s t i l o / M y A c t i o n B a r T a b s < /

e l e m e n t o >

< / s t y l e >

! < - t a b s a c t i o n b a r e s t i l o s - >

< s t y l e n a m e = " M y A c t i o n B a r T a b s "

p a d r e = " / @ W i d g e t e s t i l o . A p p C o m p a t A c t i o n B a r . T a b V i e w . " >

< - i n d i c a d o r d e t a b u l a c i ó n - >

< n o m b r e d e e l e m e n t o = " a n d r o i d : F o n d o " > @ e s t i r a b l e / a c t i o n b a r _ t a b _ i n d i c a t o r

< / e l e m e n t o >

< - S o p o r t e b i b l i o t e c a d e c o m p a t i b i l i d a d - >

< n o m b r e d e e l e m e n t o = " b a c k g r o u n d " > @ e s t i r a b l e / a c t i o n b a r _ t a b _ i n d i c a t o r < /

e l e m e n t o >

< / s t y l e >

< / r e s o u r c e s >

La superposición de la barra de acción.

Por de fec to, l a bar ra de acc ión aparece en la par te

super io r de la ventana de su act i v i dad , reduc iendo

l ige ramente la can t idad de espac io d i spon ib l e para e l res to

de la d i spos i c ión de su ac t i v idad . S i duran te e l cu rso de la

in te racc ión de l usuar io , que desea ocu l ta r y most ra r l a

bar ra de acc iones , puede hacer lo l l amando h ide ( ) y ( )

mues t ran en la Bar ra de acc iones .S in embargo, es to hace

que su ac t i v idad para vo lver a ca l cu la r y vo lver a d ibu ja r

e l d i seño basado en su nuevo tamaño.

Figura 1

Ba r ra de ac c i ones de l a

ga l e r í a en e l modo de

supe rpos i c i ón .

Para ev i ta r camb ia r e l tamaño de su d i seño cuando las p ie les

bar ra de acc iones y programas , puede act i va r e l modo de

superpos i c ión de la bar ra de acc ión . Cuando es tá en modo de

superpos i c ión , e l d i seño ac t i v idad ut i l i za todo e l espac io

d i spon ib l e , como s i l a bar ra de acc ión no está ah í y e l

s i s tema l l ama la bar ra de acc ión f ren te a su d i spos i c ión .

Es to oscurece a lgunas de la d i spos i c ión en la par te super io r,

pero ahora , cuando la bar ra de acc ión ocu l ta r o aparece , e l

s i s tema no t iene que camb ia r e l tamaño de su d i seño y la

t rans i c ión es per fec ta .

Consejo.

Si desea que su diseño sea parcialmente visible detrás de la

barra de acción, crear un estilo personalizado para la barra de

acción con un fondo parcialmente transparente, como la que se

muestra en la figura 1 Para obtener información sobre cómo

definir el fondo de la barra de acción, leer Styling la barra de

acción .

Activar el modo de superposición.

Para act ivar e l modo de superpos ic ión de la barra

de acc ión, es necesar io crear un tema

personal izado que se ext iende un tema barra de

acc ión existente y establecer e l andro id:

windowAct ionBarOver lay propiedad ala verdadera .

Para Android 3.0 y superiores

Si su minSdkVers ion se estab lece en 11 o mayor, su

tema personal izado debe ut i l izar Theme.Holo tema

(o uno de sus descendientes) como su tema

pr inc ipal .

< r e s o u r c e s >

< - e l t e m a a p l i c a d o a l a a p l i c a c i ó n o l a a c t i v i d a d - >

< s t y l e n o m b r e = " C u s t o m A c t i o n B a r T h e m e "

p a d r e = " @ a n d r o i d : s t y l e / T h e m e . H o l o " >

< n o m b r e d e e l e m e n t o = " a n d r o i d :

w i n d o w A c t i o n B a r O v e r l a y " > v e r d a d e r o < / e l e m e n t o >

< / s t y l e >

< / r e s o u r c e s >

Para Android 2.1 y superior

S i s u a p l i c a c i ó n e s t á u t i l i z a n d o l a b i b l i o t e c a d e s o p o r t e p a r a

l a c o m p a t i b i l i d a d d e l o s d i s p o s i t i v o s q u e e j e c u t a n v e r s i o n e s

a n t e r i o r e s a l a 3 . 0 d e A n d r o i d , e l t e m a p e r s o n a l i z a d o d e b e

u t i l i z a r T h e m e . A p p C o m p a t t e m a ( o u n o d e s u s

d e s c e n d i e n t e s ) c o m o s u t e m a p r i n c i p a l . Po r e j e m p l o :

Por ejemplo.

<resou r ce s>

<- e l t ema ap l i c ado a l a ap l i c a c i ón o l a a c t i v i dad ->

<s ty l e nombre = "Cus t omAc t i onBa rTheme "

pad re = "@ and ro i d : . e s t i l o / Tema AppCompat " >

< nombre de e l emen to = " and ro i d :

w i ndowAc t i onBa rOve r l ay " > ve rdade ro < / e l emen to >

< - ! c ompa t i b i l i d ad b i b l i o t e ca Sopo r t e ->

< nombre de e l emen to = " w i ndowAc t i onBa rOve r l ay " >

ve rdade ro < / e l emen to >

< / s t y l e>

< / r e sou r ce s>

Observe también que este tema inc luye dos

def in ic iones para la windowAct ionBarOver lay est i lo:

una con elandroide: pref i jo y otra s in el la .

E l que t iene e l andro id: pref i jo es para las

vers iones de Andro id que inc luyen el est i lo en la

plataforma y el uno s in e l pref i jo es para las

vers iones anter iores que leen el est i lo de la

Bib l ioteca de Soporte.

Especifique Layout con mejor margen.

C u a n d o l a b a r r a d e a c c i ó n e s t á e n e l m o d o d e s u p e r p o s i c i ó n ,

p u e d e o s c u r e c e r u n p o c o d e s u d i s e ñ o q u e d e b e p e r m a n e c e r

v i s i b l e . P a r a a s e g u r a r s e d e q u e t a l e s a r t í c u l o s s e m a n t i e n e n

p o r d e b a j o d e l a b a r r a d e a c c i ó n e n t o d o m o m e n t o , y a s e a

a g r e g a r m a r g e n o r e l l e n o p a r a l a p a r t e s u p e r i o r d e l a v i s t a

( s ) c o n l a a l t u r a e s p e c i f i c a d a p o r a c t i o n B a r S i z e

Por ejemplo.

<Relat iveLayout xmlns:android =

"http://schemas.android.com/apk/res/android"

android: layout_width = "match_parent"

android: layout_height = "match_parent"

android:paddingTop =

"?android:attr /act ionBarSize" >

. . .

</Relat iveLayout>

Si estás ut i l i zando la b ib l ioteca de compat ib i l idad

de la barra de acc ión, es necesar io e l iminar

el android:pref i jo.

Por ejemplo.

<- Compatibilidad biblioteca Apoyo -->

<RelativeLayout xmlns:android =

"http://schemas.android.com/apk/res/android"

android:layout_width = "match_parent"

android:layout_height = "match_parent"

android:paddingTop = "?attr/actionBarSize" >

...

</RelativeLayout>

En este caso, el ? attr / actionBarSize valor sin el prefijo

funciona en todas las versiones, incluyendo androide 3,0 y

superior.

top related