Support Library rev.22.1のリリースがアナウンスされました。
マイナーバージョンアップですが、いくつかの特筆すべき変更があります。
Support V4
DrawableCompat
が導入され、様々なDrawable
の機能を API Level 4 までサポートします。DrawableCompat#wrap(Drawable)
を用いてDrawable
をラップすることによって、Tinting のサポートが**Drawable
リソースの分離をしなくても**可能になります。
また、Palette
の一部内部機能をColorUtils
から利用可能になります。Lollipop で導入された各種アニメーションのInterpolator
もこのリリースで含まれるようになりました。
Space
はこのリリースで、GridLayout
ライブラリから Support V4 ライブラリに移動となりました。
AppCompat(Support V7)
ActionBarActivity
が deprecated になり、新しくAppCompatActivity
が導入されます。
これは、AppCompatDialog
というダイアログ向けの互換クラスが導入されたためです。AppCompatDialog
によって、マテリアルデザインをDialog
に適用できます。
また、内部機能(ライフサイクルコールバックやテーマ、Color tinting 等)をAppCompatDelegate
によってコントロールすることが可能となります。このAppCompat
はどのActivity
でも内包可能です。
各種の View の Tint を自動で行うよう、AppCompatButton や AppCompatTextView などの専用クラスが導入されました。これらはレイアウト XML に記述する事ができ、inflate 時に自動で tint が行われます。
ToolBar
については、android:theme
をレイアウトで指定可能となります。この他の View については、API Level 11+ 以降で同様に指定できるようになります。
Leanback
Leanback では、Android TV における各種のベストプラクティスを取り扱っています。サンプルが更新され、左側にガイド、右側にアクションの一覧が表示されるようになっています。それぞれテーマをカスタマイズでき、GuidanceStylist
やGuidedActionsStylist
を用いて更に拡張が可能です。
この他、バグフィクスやパフォーマンス改善も含まれます。
RecyclerView
バグフィクスのほか、SortedList
というデータ構造が導入されました。これによって、ソート済リストの取り扱いが簡単になり、コレクションの変更に応じたイベントハンドリング(dataset change)も容易になります。また、SortedList
はデータセットの変更をバッチ処理することができ、同時にたくさんの変更があっても一回の操作でそれを反映することが出来るようになっています。
Palette
このリリースで、品質の劣化なしに 6~8 倍の高速化がされました。
Palette
のインスタンス生成にBuilder
を用いるようになりました。Palette#from(Bitmap)
でBuilder
を得て、オプションを指定してからgenerate
またはgenerateAsync
するようにできます。
RenderScript
このリリースでは信頼性とパフォーマンスが向上しており、最も高速で信頼性のある実装を選択するようになっています。ScriptIntrinsicHistogram
とScriptIntrinsicResize
が新たに導入されました。