2016-03-24 34 views
0

AndroidのSwitchコントロールのデフォルトの色を変更する必要があります(私はXamarinを使用していますが、それはネイティブと大きく異なるはずがありません)。Androidスイッチの色の変更

予想される最終テンプレート結果:https://www.google.com/design/spec/components/selection-controls.html#selection-controls-switch

これは、Android 5.0でのデフォルトのスイッチ制御ですが、私はトラックと親指の両方で別の色に緑から色を変更したいと思います。

私がやっていること 私はほとんど働いているメソッドを見つけましたが、結果は私が望むものではありません。方法は次のとおりです。

var color = Color.Rgb(101, 127, 135); 
NearSwitch.TrackDrawable.SetColorFilter(color, PorterDuff.Mode.Multiply); 

問題:私はトラックでの正確な色を設定することはできません。 私が設定している色はRGBでは#657f87または101,127,135ですが、おそらくPorterDuffモードとトラックテンプレート/透明度のために、最終的な色は私が設定した色ではありません。

PorterDuffモードをSRCなどに変更しようとすると、軌跡が境界線付きの1つではなく2つの異なる色の矩形であることがわかります(Androidのデフォルト)。

可能であれば、テンプレート全体を書き換えたくありません。何か案が?

答えて

0

あなたのPorterDuffは "Multiply"に設定されています。したがって、新しいColorはスイッチの基本色と混ざります。使用

のTy:

NearSwitch.TrackDrawable.SetColorFilter(color, PorterDuff.Mode.SRC_IN); 
+0

これは別の色(#1 bac5c9又は186、197、RGBで201)を生成し、まだ正しくありません。 – xTuMiOx

関連する問題