6

Quindi abbiamo rimosso con successo ActionBarSherlock dall'app Zappos in favore del nuovo ActionBarCompat e funziona perfettamente su Honeycomb + ma su Gingerbread la barra delle azioni si espande per riempire l'intero schermo e non riesco a capire perché sta succedendo. Fondamentalmente abbiamo appena modificato tutti i temi/stili/riferimenti a ActionBarSherlock per essere gli equivalenti in ActionBarCompat. Di seguito è riportata una schermata del problema. Qualcun altro si imbatte in questo su GB e sa di una correzione? E 'in possesso di un rilascio per noi: \ActionBarCompat on Gingerbread riempie lo schermo intero

+0

Sembra che tu abbia visualizzazioni personalizzate nella barra delle azioni. Cosa succede quando imposti la loro altezza su wrap_content? – Krylez

risposta

5

Va bene così ho capito finalmente ... avevamo copiato il codice sorgente appcompat come un progetto di libreria invece di usare il com.android.support:appcompat -v7: 18.0. + dipendenza in gradle. Dopo il passaggio alla dipendenza in gradle e la rimozione della sorgente appcompat dal nostro progetto, funziona come previsto ora.

+0

Qualche idea sulla causa principale di questo problema? La rimozione del progetto della biblioteca e l'aggiunta come artefatto in stile Maven hanno risolto anche il mio problema, ma mi chiedevo solo perché fosse così. –

0

ho affrontato un problema simile in cui l'ActionBar riempiva l'intero schermo quando sono andato da utilizzare ActionBar AppCombat da usare ActionBarSherlock . Nel file style.xml della cartella value-v11. Ho dovuto rimuovere lo stile ActionBar che eredita dall'appCombat ActionBar.

0

Ho anche avuto questo problema. Il problema era che le mie definizioni di temi per Gingerbread puntavano a uno stile che non esisteva.

ho avuto questo in values/themes.xml:

<item name="actionBarStyle">@style/mytheme_solid_ActionBar</item> 

Ma questo mytheme_solid_ActionBar è stata definita solo in values-v11/styles.xml e values-v14/styles.xml.

Ho appena dovuto aggiungerlo a values/styles.xml in modo che i dispositivi di Gingerbread avessero uno stile corretto definito per la barra delle azioni (che eredita da Widget.AppCompat.Light.ActionBar.Solid.Inverse).

0

Il mio problema era il genitore da cui ereditava il mio actionBarStyle personalizzato.

<style name="AppTheme" parent="AppBaseTheme"> 
    <item name="actionBarStyle">@style/sfActionBar</item> 
    <item name="android:actionBarStyle">@style/sfActionBar</item> 
</style> 

mio stile personalizzato era in origine:

<style name="sfActionBar" parent="Widget.Sherlock.ActionBar">...</style> 

Il cambiamento per farlo funzionare su tutto, ma Gingerbread è stato:

<style name="sfActionBar" parent="@android:style/Widget.ActionBar">...</style> 

la correttezza modifica:

<style name="sfActionBar" parent="@style/Widget.AppCompat.ActionBar">...</style> 
0

Una volta ho avuto un simile errore e (Il colore della barra degli strumenti riempiva l'intero schermo su Gingerbread) e la soluzione era rimuovere android:clipChildren="false" dalla vista principale di Toolbar.

Problemi correlati