サポートパッケージによる ActionProviderについて日本語での情報が見あたらないのでメモ書きを。
まぁ 公式のドキュメントを読めばわかる内容ではある。
- メニューリソースにてルート要素に「xmlns:app=”http://schemas.android.com/apk/res-auto”」を追加。
- メニューリソースにて「android:actionProviderClass=’hogehoge’」は「app:actionProviderClass=’hogehoge’」に書き直す。
- 「MenuItem.getActionProvider()」は「MenuItemCompat.getActionProvider(MenuItem)」に書き直す。
- 「MenuItem.setActionProvider(actionProvider)」は「MenuItemCompat.setActionProvider(MenuItem,actionProvider)」に書き直す。
- 「MenuInflater」は「SupportMenuInflater」に書き直す。*1
app周りは ADTの 22辺りからの話。
以上をふまえて標準の ActionProviderに付いての解説を探せば特に問題なく使える。
「最近使った~」等のように項目を動的に作る場合に作成を実際に表示が必要になるタイミングまで遅延できるので良いね。
コンテキストに依存しない処理ならばメニューリソースへの記述だけで完結できるのも楽で良し。
*1 主に onPrepareSubMenuで使うと思うけど、地味に重要