wake-up-neo.com

Android Aktionsleiste mit Aktionselementen oben und unten teilen?

Gibt es eine Möglichkeit, einige Aktionselemente im oberen Bereich der geteilten Aktionsleiste festzulegen, während die anderen im unteren Bereich angezeigt werden? Oder ist es alles oder nichts, wobei alle Aktionselemente nur in den unteren Teil des Split gehen?

enter image description here

57
Ryan R

Dies ist derzeit nicht möglich.

Siehe die Antwort direkt von Android den Entwicklern Reto Meier und Roman Nurik während der Android den Entwicklerbürozeiten: http://youtu.be/pBmRCBP56 -Q? T = 55m50s

26
Ryan R

Um dies zu lösen, habe ich eine benutzerdefinierte Ansicht als Aktionsleiste verwendet:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    ActionBar actionBar = getActionBar();
    actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);

    View view = View.inflate(getApplicationContext(), R.layout.actionbar,
            null);
    actionBar.setCustomView(view);

}

und dann habe ich für die untere Leiste meine Menüansicht aufgeblasen oder was auch immer Sie unten erscheinen wollen:

 @Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.browser_main, menu);
    RelativeLayout relativeLayout = (RelativeLayout) menu.findItem(
            R.id.layout_item).getActionView();

    View inflatedView = getLayoutInflater().inflate(
            R.layout.media_bottombar, null);

    relativeLayout.addView(inflatedView);

    return true;
}

In das Android Manifest habe ich auch (Android: uiOptions = "splitActionBarWhenNarrow") wie folgt aufgenommen:

<application
    Android:allowBackup="true"
    Android:icon="@drawable/ic_launcher"
    Android:label="@string/app_name"
    Android:theme="@style/AppTheme"
    Android:uiOptions="splitActionBarWhenNarrow" > ....
17
roomtek

Ich habe dieses Problem gelöst, indem ich eine benutzerdefinierte Ansicht verwendet und die Menüelemente, die oben angezeigt werden sollen, zu dieser Ansicht hinzugefügt habe.

14
Sebastian

Wenn diese Option aktiviert ist, hat Android) die Option, die Aktionsleiste zu teilen. Ob die Aufteilung erfolgt, entscheidet das System zur Laufzeit

Sie können festlegen, dass die Aktionsleiste automatisch vom System aufgeteilt werden soll, wenn nicht genügend Speicherplatz verfügbar ist. Sie können dies über den Parameter Android: uiOptions = "SplitActionBarWhenNarrow" in der Deklaration Ihrer Anwendungsaktivität in der Datei AndroidManifest.xml aktivieren.

1
BoldHD

Zweifelhaft. Sie können jedoch eine Kombination dieser Optionen verwenden, wenn Sie Ihre Menüelemente in der Aktionsleiste zum Experimentieren erstellen.

MenuItem.SHOW_AS_ACTION_ALWAYS
MenuItem.SHOW_AS_ACTION_NEVER
MenuItem.SHOW_IF_ROOM
1
Matthew Reilly