showAsActionで表示しない問題が解決
ActionBar を使っていてオプションメニューで showAsAction を always などに設定しているにも関わらずアイコンなどが ActionBar に入らない現象。ようやく解決。
結局対応させている最低の SDK バージョンが小さかったりすると、サポートライブラリとかを使っているようなのだけれど、どうやらこの場合にメニュー xml ファイルの属性指定を修正しないと駄目らしい。
通常は、
android:showAsAction="always"
などとすればよいのだけれど、
yourapp:showAsAction="always"
などと作成しているアプリケーションの名前にする必要があるらしい。同時に、xmlns の指定も必要になると。
<menu
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:yourapp="http://schemas.android.com/apk/res-auto"
>
yourapp 部分を作成しているアプリケーション名に変更する。
以前に調べていたときにも見かけた内容だったのだけれど、なんとなくスルーしてしまっていた。反省。フラグメントだからなにかが違うのか? みたいなこともあったので試してみたりと回り道をしてしまった。(結局フラグメントうんぬんは無関係だった)
メニューアイテムの順序を検討して入れ替えているうちに、なにやらちゃんと動作していた処理がおかしくなってしまいてんやわんやの今ココ。うーむ。
| 固定リンク
コメント
これで出来きました。
compat:showAsAction="always"
http://qiita.com/KeithYokoma/items/e7c7b960a0fb1d983355
投稿: | 2016.10.10 02:28