7

tengo un proyecto en el que Setted:Característica Título Personalizado: No se puede combinar títulos personalizados en la API de 11 y por encima de

  • minSdkVersion setted a 10
  • MainActivity es un TabActivity

Código de onCreate método es el siguiente:

super.onCreate(savedInstanceState); 

requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); 
setContentView(R.layout.main); 
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.custom_title); 
... 

Con los ajustes anteriores, todo funciona bien! Pero, si fijo minSdkVersion 11 o superior, esta excepción se produce:

android.util.AndroidRuntimeException: You cannot combine custom titles with other title features 

No entiendo por qué sucede esto simplemente cambiando minSdkVersion. Me rojo mucho sobre este problema en este sitio. He intentado establecer:

  • Theme.NoTitleBar en el diseño principal y después en el archivo de manifiesto también
  • puse esas 3 líneas en todas las posiciones posibles
  • Si comento primera línea de una NullPointerException se produce cuando llamo algo en mi referencia TextView de mi diseño CustomTitle
  • probé ajuste, en theme.xml declaración archivo, "windowNoTitle" = true

desde que estoy usando funciones disponibles en la API 11 solamente, quiero configure minSdk en 11 antes de cargar la aplicación en la tienda. Como lo puedo hacer ?? Necesito ayuda

Editar: con minSdkVersion = 10 y Theme.NoTitleBar en Manifiesto, se produce el mismo error. Quitándolo, todo funciona como antes. ¿Alguien puede proporcionar un código de trabajo (código de manifestación y actividad) para establecer un título personalizado cuando la API tiene 11 o más? Thx mucho

+0

Nadie me puede ayudar ?? – kinghomer

+0

Hay poco uso en el uso de pequeñas etiquetas usadas, p. cualquier valor de etiqueta que no sea tag [tag: android] no es seguido por nadie. La razón por la que nadie responde es presumiblemente porque intenta hacer exactamente lo contrario de lo que sugiere el error. –

Respuesta

37

fijado por mi mismo. No sé por qué, pero simplemente añadiendo en el archivo de manifiesto "tema" de propiedad para la declaración de cada actividad, todas las obras:

De esta:

<activity 
     android:name=".CheckActivity" 
     android:configChanges="orientation" 
     android:screenOrientation="portrait" 
</activity> 

a esto:

<activity 
     android:name=".CheckActivity" 
     android:configChanges="orientation" 
     android:screenOrientation="portrait" 
     android:theme="@android:style/Theme" > 
</activity> 
+1

Esto funcionó para mí. Acabo de agregar el android: theme = "@ andriod: style/Theme" a mi actividad y funcionó. En mi caso, ¡era mi actividad Bluetooth! – BostonGeorge

3

@kinghomer He tratado CUSTOM_TITLE su encendido 2,2 (API 8) en realidad. ¡Déjame probar API 11 y contactarte!

Antes de eso, no es necesario hacer Theme.NoTitleBar en cualquier lugar, puede ser controlado en .java archivo directamente. Dame algo de tiempo, ¡volveré!

+0

bien, esperaré :). Thx – kinghomer

+0

¿Noticias al respecto? – kinghomer

+0

¡Hola! ¡eso funciona! U has hecho algo de trabajo. ¡Verificación cruzada! – Charan

0

res/valores-v11 defalut utilizan este código:

<style name="AppBaseTheme" parent="android:Theme.Holo.Light"> 
     <!-- API 11 theme customizations can go here. --> 
</style> 

cambio "android: Theme.Holo.Light" a "@android: estilo/La yo "estará bien!

consejos: si su proyecto no tiene "res/valores-v11", a continuación, comprobar su proyecto de referencia "proyecto lib"

0

Aparte de la respuesta aceptada, hay otra manera de resolver esto:.

<application 
     android:allowBackup="true" 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@style/CustomTheme" > 

asigne un theme atribución al application en el xml-based mainifest, que debería funcionar para todas las actividades.

0

Este problema se produce cuando intenta agregar una barra de título personalizada junto con extender su actividad por ActionBarActivity o AppcomActivity. Estas dos clases de actividad ya tienen una barra de título definida. Por lo tanto, cuando intenta agregar su propia barra de título personalizada, surge un conflicto, qué barra de título usar, la personalizada o la proporcionada por la actividad extendida.

Para resolver este problema, simplemente amplíe su actividad por Activity que no tiene ninguna barra de título predefinida, por lo que la suya será aceptada sin ningún conflicto.

public void MyActivy extends Activity 
{ 

    // your code 

} 
0

Acabo de añadir android:theme="@android:style/Theme" en activity en AndroidManifest.xml archivo y funcionó muy bien.

<activity 
     android:name=".MainActivity" 
     android:theme="@android:style/Theme" > 
</activity> 

Espero que esto funcione para usted también.

Cuestiones relacionadas