質問

私はどこにいても問題があります ActionItem アイコンとテキストの両方があります ActionBar 分割されている場合、場合でもアイコンが表示されます showAsAction="always|withText".

テキストを強制的に表示する方法はありますか?

役に立ちましたか?

解決

withText システムのヒントです。幅が制限されたデバイスまたは構成では、システムはそれを無視することを選択できます。

他のヒント

私は最近同じ問題を抱えており、Adampによってすでに答えられているように、「withtext」オプションでテキストを強制的に表示する方法はありません。

実際、これは、Googleカレンダーの編集/作成イベント画面のIEとして、ActionBarのカスタムビューで実行できます(アクションバーのキャンセルと保存ボタン、どちらもテキスト付き)。

Googleカレンダーのソースがどのように行われるかを確認してください

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

アクションバーカスタムビューのレイアウトがあります

res/layout/edit_event_custom_actionbar.xml

関連するスタイルも確認してください

これは、editeventfragmentクラスのアクションバーに適用されます。メソッドoncreateview

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);
 }

イベントハンドラーもそこに割り当てられます。

ActionBarディスプレイオプションは、EditeVenticaCtivityクラス、OnCreateメソッドで設定されています。

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

これは私がこれまでに理解したものです。 ActionBarの標準メニュー構成を使用して、他の画面オプション(タブレット)には追加の構成がありますが、自分のコードで同様のレイアウト、スタイル、および2つのスニペットを使用して、期待される結果(テキスト付きActionBarアイテム)が作成されました。

お役に立てれば

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top