2012-09-18 10 views
10

Mi aplicación de Android tiene navegación de pestaña usando una barra de acción. Funciona bien, pero me molesta que durante el primer arranque de la aplicación, una breve barra de acción predeterminada aparezca brevemente antes de ser reemplazada por la barra de acción real de navegación con pestañas. Mi onCreate comienza así:Android: oculte la barra de acciones durante el inicio y luego muéstrela nuevamente.

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    this.getWindow().requestFeature(Window.FEATURE_ACTION_BAR); 
    setContentView(R.layout.activity_main); 

    //Set up the actionbar 
    final ActionBar actionBar = getActionBar(); 
. 
. 
. 

¿Qué tengo que hacer para que la barra de acción real, se iniciará sin un pequeño defecto que muestra brevemente antes de que lo hace en el arranque?

Gracias

+1

¿Es esto algo que busca: [Cómo ocultar la barra de acción antes de crear la actividad, y luego mostrarla de nuevo?] (http://stackoverflow.com/questions/8500283/how-to-hide-action-bar-before-activity-is-created-and-then-show-it -una vez más) –

Respuesta

5

Ocultar durante el inicio

getSupportActionBar().hide(); 

Después de que pueden mostrar de nuevo con ...

getSupportActionBar().show(); 

Debería ser lo mismo con la Barra de acciones nativa de Android.

se debe utilizar esta línea en el manifiesto y no utilice getActionBar()

<item name="android:windowActionBar">false</item> 

y una vez que esté terminado en el uso Actividad principal por debajo o nada

<item name="android:windowActionBar">true</item> 
+0

Cómo agrego el XML que ha especificado para que la aplicación se inicie con false Pero luego cambia a true Después de que la actividad principal comienza? – LoneDuck

+0

dentro de la pestaña de actividad – MBMJ

+1

He intentado asignar a la aplicación un tema sin barra de acciones, pero asigno la actividad con un tema con una (usando android: windowActionBar). Todavía se inicia con una barra de acciones predeterminada, y solo luego se inicializa como la barra de acciones de navegación real. – LoneDuck

1

si está utilizando barra de acción Sherlock y desea cambiar esto de un FragmentActivity, a continuación, se llama a

getSherlockActivity().getSupportActionBar().hide(); 
4

poner esto para su actividad de definición de manifiesto:

<activity 
      android:name=".MyActivity" 
      android:theme="@android:style/Theme.NoTitleBar.Fullscreen" 
      > 

continuación, dentro de su alcrear hacer esto para mostrar el tema real que desee utilizar:

setTheme(R.style.AppTheme); 
Cuestiones relacionadas