PDA

Ver la Versión Completa : [ CONSULTA ] Problema con action bar


hugomc92
22/09/13, 01:06:20
Hola, estoy empezando a programar en android y he empezado por una calculadora, el caso es que yo elegí el tema holo ligth sin action bar pero cada vez que la ejecuto en el móvil si que sale la acción bar aunque mientras programo en el XML no está. Como puedo hacer para que no aparezca tampoco cuando la ejecuto en el móvil?
Muchas gracias de antemano a todos.

Saludos

rafaxplayer
22/09/13, 09:51:54
Tienes que editar el theme de tu activity en el Manifest.xml para que los cambios funcionen.

<activity
android:name="com.example.notificacionesgcm.MainActivity"
android:label="@string/app_name"
android:theme="@android:style/Theme.Holo.Light.NoActionBar">

hugomc92
22/09/13, 11:46:58
Tienes que editar el theme de tu activity en el Manifest.xml para que los cambios funcionen.

<activity
android:name="com.example.notificacionesgcm.MainActivity"
android:label="@string/app_name"
android:theme="@android:style/Theme.Holo.Light.NoActionBar">

Muchísimas gracias!! Por fin ha funcionado! Y eso funcionaria con todos los tipos de tema no?

kriogeN
22/09/13, 12:27:54
¿Porqué limitáis vuestras aplicaciones a Android 4.0+? Google se molesta en darnos la librería de soporte para que podamos usar todas las opciones de Android 4.0+ en Android 2.2+. No hace mucho nos han dado la ActionBarActivity. Aunque no os lo creáis aún queda mucho mercado con Android 2.3 (incluso 2.2), sobre todo en España.

En cuanto al tema, el NoActionBar es para todos los temas que sean Holo. Los temas que no son Holo no llevan ActionBar. Salvo que uses un Theme.AppCompat y el tipo sea ActionBarActivity (esto sólo si usas la librería de soporte).

Una alternativa a esto es usar "getActionBar().hide()" (o "getSupportActionBar().hide()" si usas la librería de soporte) en el onCreate de la Activity. Así podrás hacer aparecer la ActionBar cuando te venga en gana usando un "show()". Y no estar limitado a tenerla o no tenerla.

hugomc92
22/09/13, 14:27:58
¿Porqué limitáis vuestras aplicaciones a Android 4.0+? Google se molesta en darnos la librería de soporte para que podamos usar todas las opciones de Android 4.0+ en Android 2.2+. No hace mucho nos han dado la ActionBarActivity. Aunque no os lo creáis aún queda mucho mercado con Android 2.3 (incluso 2.2), sobre todo en España.

En cuanto al tema, el NoActionBar es para todos los temas que sean Holo. Los temas que no son Holo no llevan ActionBar. Salvo que uses un Theme.AppCompat y el tipo sea ActionBarActivity (esto sólo si usas la librería de soporte).

Una alternativa a esto es usar "getActionBar().hide()" (o "getSupportActionBar().hide()" si usas la librería de soporte) en el onCreate de la Activity. Así podrás hacer aparecer la ActionBar cuando te venga en gana usando un "show()". Y no estar limitado a tenerla o no tenerla.

Estoy de acuerdo contigo y no estoy limitando la calculadora q estoy haciendo a 4.0+, la tengo como mínimo desde 2.2 pero soy muy nuevo y no sabia bien como iba y me gustaba el estilo holo para los superiores de 4.0 y el tema por defecto para los anteriores. Estuve leyendo y descubrí lo de la actionbar y quería quitarla, ya que quería que fuera a pantalla completa (salvo por la barra de notificaciones) y, aun no lo he probado, pero pensé que si quitaba el actionbar del diseño también se irira la barra de titulo que sale en 2.2 y 2.3. Si no seria así, podrías indicarme que debería hacer? Muchas gracias

hugomc92
22/09/13, 16:44:15
Estoy de acuerdo contigo y no estoy limitando la calculadora q estoy haciendo a 4.0+, la tengo como mínimo desde 2.2 pero soy muy nuevo y no sabia bien como iba y me gustaba el estilo holo para los superiores de 4.0 y el tema por defecto para los anteriores. Estuve leyendo y descubrí lo de la actionbar y quería quitarla, ya que quería que fuera a pantalla completa (salvo por la barra de notificaciones) y, aun no lo he probado, pero pensé que si quitaba el actionbar del diseño también se irira la barra de titulo que sale en 2.2 y 2.3. Si no seria así, podrías indicarme que debería hacer? Muchas gracias

Vale, acabo de realizar los cambios en el proyecto en eclipse (antes lo había hecho en AIDE desde el propio MV y funcionaba) y me ahora error de compilación ya que la API de getActionBar().hide() es como mínimo API 11 y en lo de la edición del manifiest es 13 mientras que yo tengo API mínima 8. Como podría hacer que no saliera la actionbar en dispositivos de 4.0+ y que no saliera el titulo en los de versiones anteriores? Muchas gracias otra vez