2012-05-09 5 views
6

sto usando il ActionBarSherlock per la mia domanda, e questo è il codice che uso per nascondere il Title di ActionBar:ActionBar Lag a titolo nascondiglio

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    ActionBar actionBar = getSupportActionBar(); 
    actionBar.setDisplayShowTitleEnabled(false); 
    actionBar.setDisplayUseLogoEnabled(true); 
    setContentView(R.layout.main_fragment); 
} 

Il problema di questo è che quando si avvia l'applicazione c'è un breve periodo di tempo in cui vengono visualizzati contemporaneamente i valori e Title. Questo sembra davvero brutto, come posso liberarmene?

risposta

17

Questa è la mia soluzione, abbiamo bisogno di definire un nuovo stile e dichiararlo nel Manifesto

<style name="VibhinnaTheme" parent="Theme.Sherlock.Light.ForceOverflow"> 
    <item name="android:actionBarStyle">@style/VibhinnaTheme.ActionBar</item> 
    <item name="actionBarStyle">@style/VibhinnaTheme.ActionBar</item> 
</style> 

<style name="VibhinnaTheme.ActionBar" parent="Widget.Sherlock.Light.ActionBar.Solid"> 
    <item name="android:displayOptions">showHome|useLogo</item> 
    <item name="displayOptions">showHome|useLogo</item> 
</style> 

questo vincolo è stato utile: LINK

+2

Questa è la soluzione corretta. Il "ritardo" è il ritardo tra la creazione della vista decora e l'esecuzione "onCreate". –

+0

Jake, è possibile ridurre questo ritardo? – petrnohejl

+1

Risponderò: no. Ecco un ottimo post su questo argomento: android.cyrilmottier.com/?p=873 BTW grazie per la risposta, non stavo trovando troppo nei documenti ufficiali. – Sloy