アイコンを持つTabLayoutがあります。アイデアは色のランタイムを変更することです。 私はstateとstate_selectedとxmlのdrawableファイルを持っています。デフォルトは同じ白い画像ですので、色を後で置くことができます。 私はさまざまな州のためのdrawableを取る:setColorFilterで設定された色は、前回のポラロイドデバイスで消えます。
Drawable [] drawables = stateListDrawable.getConstantState();
、私は別の配列から色を置くすべての描画可能状態について:
描画可能[I] .setColorFilter(色[I]、PorterDuff.Mode.MULTIPLY)。
問題は、色が最初に表示されているが、私は、アイコンの上にすべてのアイコンをクリックして起動したときに再び白くなると私は色合いを失うということです。
ロリポップ以上のものはすべて正常に機能しています。
drawables [i] .setColorFilter(colors [i]、PorterDuff.Mode.SRCATOP); –
私はそれを試みました。同じ結果。 :) –