android: actionBarStyle requiere nivel de API 11

Mientras usa ActionBarSherlock en xml en:

 @style/Widget.Styled.ActionBar 

Tengo este error:

 android:actionBarStyle requires API level 11 (current min is 8) error 

Lo estoy usando para back portar mi aplicación con la barra de acción a 2.2 dispositivos.

Cómo usarlos juntos:

  @style/Widget.Styled.ActionBar @style/Widget.Styled.ActionBar 

Tienes que usar solo:

 @style/Widget.Styled.ActionBar 

Como puede obtener el error, tiene android:actionBarStyle disponible en API nivel 11.


Si desea que su ActionBar de ActionBar el mismo aspecto en todos los niveles de la API, debe crear diferentes carpetas para el nivel de API seleccionado y crear nuevos archivos style.xml / themes.xml en estas carpetas.

Por ejemplo:

 - res -- values -- styles.xml -- themes.xml // API LEVEL 8+ -- values-v11 -- styles.xml -- themes.xml // API LEVEL 11+ -- values-v14 -- styles.xml -- themes.xml // API LEVEL 14+ 

Lo segundo que puedo pensar es que tengas en cuenta qué temas estás incluyendo al actual en diferentes niveles de API.

Por ejemplo, para API nivel 8: usará @style/Theme.Sherlock.Light.DarkActionBar y tendrá que usar solo actionBarStyle . Al diseñar la barra de acciones para el nivel API 14+, no necesitará actionBarStyle , porque probablemente establezca el tema Holo.Light como principal para el actual, por lo que en esta situación deberá usar android:actionBarStyle .

Otra opción es usar las tools:targetApi atributo tools:targetApi , que requiere el espacio de nombres de las tools . Esto actúa de manera similar a la anotación @TargetApi que puede usar en los archivos java.

    

Tenga en cuenta que xmlns:tools="http://schemas.android.com/tools" en la etiqueta , tal como se requiere.

Simplemente puede seleccionar errores en Eclipse y presionar su tecla “Eliminar”. Entonces solo ejecuta el proyecto y funcionará.

Tiene eliminar estos errores cada vez que modifique su XML.

Depende de qué versión de SDK desee apuntar:

Destinatario menor a 11:

En su AndroidManifest.xml use:

  

x cualquier cosa entre 8-10 (depende de tu código)

En tu estilo, usa:

 @style/Widget.Styled.ActionBar 

Apuntar a cualquier dispositivo:

En su AndroidManifest.xml use:

  

16 utilizado en el ejemplo de ActionBarSherlock puede ser mayor o igual a 11 (depende de su código)

En tu estilo usa ambos:

 @style/Widget.Styled.ActionBar @style/Widget.Styled.ActionBar 

el primero es para el tema ActionBarSherlock y el segundo es para usar el mismo tema en dispositivos Android que ya son compatibles con ActionBar

Editar: para borrar las advertencias de Lint (subrayado rojo en el archivo XML que puede aparecer):

Claro advertencias de pelusa