2012-08-24 3 views
6

klicken habe ich folgendes Setup:Android: Margin zwischen ActionBar Symbol und Drop-Down-Menü Navigation ändert sich, wenn Sie Such

On launch

So können Sie auf das Suchsymbol klicken, um die Aktionsleiste in eine Suche drehen Bar. Ziemlich Standard:

Searching

Also, wenn Sie die Suche fertig sind können Sie das Home-Symbol klicken Sie auf die Bar gehen weg zu machen:

Reverting

Aber wenn Sie gehen zurück, die Navigation Dropdown Menü auf der rechten Seite ziemlich viel verschoben:

Wrong!

Ich kann nicht wirklich herausfinden, was hier passiert. Das erste, was ich getan habe, war eine brandneue App zu erstellen und sie neu zu erstellen (was Sie unten sehen), um sicherzustellen, dass es kein Problem mit Stilen oder Themen war, die ich in meiner Haupt-App verwende. Das hat dem Problem nicht geholfen. Ich benutze ActionBarSherlock. Das nächste, was ich getan habe, war, das Projekt mithilfe der offiziellen Action Bar API von Google neu aufzubauen. Das hat auch keinen Unterschied gemacht.

Hat jemand irgendwelche Ideen? Ich werde jeden Code bereitstellen, von dem Sie glauben, dass er helfen könnte, aber ich habe die Implementierung ziemlich direkt aus den Google-Dokumenten übernommen. Vielen Dank!

EDIT: Hinzufügen einige Vorher-Nachher-Bilder mit Layout Grenzen sichtbar (dev Optionen verfügen in 4.1+)

VOR:

good

NACH:

bad

Ich habe auch das Menü XML:

01 enthalten
<?xml version="1.0" encoding="utf-8"?> 

<item android:id="@+id/abm_search" 
    android:icon="@android:drawable/ic_menu_search" 
    android:showAsAction="always|collapseActionView" 
    android:actionViewClass="android.widget.SearchView" /> 

<item android:id="@+id/abm_location" 
    android:title="Stuff" 
    android:showAsAction="never" /> 

<item android:id="@+id/abm_radius" 
    android:title="More Stuff" 
    android:showAsAction="never" /> 

<item android:id="@+id/abm_settings" 
    android:title="Other Stuff" 
    android:showAsAction="never"/> 

Antwort

3

das Problem gefunden werden. Ich hatte der Aktionsleiste den Titel "" gegeben. Stattdessen, wenn Sie in der Aktionsleiste diese Anzeigeoption gibt:

actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_HOME);

es das Problem behoben. Hoffe das hilft jemand anderem.

+0

Funktioniert nicht, dadurch wird die gesamte Aktionsleiste leer. – Josh

Verwandte Themen