Frage

Ich habe ein Problem, bei dem wenn das ActionItem hat sowohl ein Symbol als auch einen Text und die ActionBar ist geteilt, es zeigt nur das Symbol, auch wenn die showAsAction="always|withText".

Gibt es eine Möglichkeit, den Text zum Erscheinen zu zwingen?

War es hilfreich?

Lösung

withText ist ein Hinweis auf das System. Bei Breitenbetriebsgeräten oder Konfigurationen kann das System es ignorieren.

Andere Tipps

Ich hatte in letzter Zeit das gleiche Problem und wie bereits von Adamp beantwortet wurde, gibt es keine Möglichkeit, den Text mit der Option "WithText" zu erzwingen.

Tatsächlich kann dies mit einer benutzerdefinierten Ansicht in der ActionBar als IE im Google -Kalender -Ereignisbildschirm des Google -Kalenders erfolgen (Schaltfläche und speichern Sie in der Aktionsleiste, beide mit Text).

Überprüfen Sie die Quelle der Google -Kalender darüber, wie es fertig ist

https://android.googlesource.com/platform/packages/apps/calendar

Es gibt ein Layout für die action einen benutzerdefinierten Ansicht in

res/layout/edit_event_custom_actionbar.xml

Bitte überprüfen Sie auch die verwandten Stile

Dies wird auf die ActionBar in der EdueVEventFragment -Klasse, Methode OnCreateView angewendet, angewendet

if (mUseCustomActionBar) {
     View actionBarButtons = inflater.inflate(R.layout.edit_event_custom_actionbar,
             new LinearLayout(mContext), false);
     View cancelActionView = actionBarButtons.findViewById(R.id.action_cancel);
     cancelActionView.setOnClickListener(mActionBarListener);
     View doneActionView = actionBarButtons.findViewById(R.id.action_done);
     doneActionView.setOnClickListener(mActionBarListener);

     mContext.getActionBar().setCustomView(actionBarButtons);
 }

Die Event -Handler sind auch dort zugewiesen.

Die ActionBar Display -Option wird in der EDITEventActivity -Klasse, OnCreate -Methode, festgelegt:

getActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM,                      
         ActionBar.DISPLAY_HOME_AS_UP | ActionBar.DISPLAY_SHOW_HOME|
         ActionBar.DISPLAY_SHOW_TITLE | ActionBar.DISPLAY_SHOW_CUSTOM);

Das habe ich bisher herausgefunden. Es gibt einige zusätzliche Konfiguration für andere Bildschirmoptionen (Tablets), die die Standardmenükonfiguration für die ActionBar verwenden. Verwenden eines ähnlichen Layouts, eines ähnlichen Stils und dieser beiden Ausschnitte in meinem eigenen Code das erwartete Ergebnis (ActionBar -Element mit Text).

Hoffe das hilft

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top