更改开关的颜色

时间:2016-05-12 08:26:40

标签: nativescript

我想更改Android上切换开关的颜色。我注意到该开关具有ns_accent的颜色,并且由于我的应用程序中的其他元素,此颜色无法更改。

Style.xml:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    ...
    <color name="ns_accent">#00CCBB</color>
</resources>

在iOS中,我已经用这段代码解决了这个问题:

switch.ios.tintColor = UIColor.colorWithRedGreenBlueAlpha(1.0, 1.0, 1.0, 0.5);
switch.ios.onTintColor = UIColor.colorWithRedGreenBlueAlpha(1.0, 1.0, 1.0, 0.5);

另外我注意到我可以使用以下代码解析Android颜色:

android.graphics.Color.parseColor("#B3FFFFFF");

问题:如何更改Android中的开机颜色?

1 个答案:

答案 0 :(得分:4)

你可以这样编程:

var Color = colorModule.Color
var switchColor = new Color("#somecolor");

switch.android.getThumbDrawable().setColorFilter(switchColor.android, android.graphics.PorterDuff.Mode.MULTIPLY);    
switch.android.getTrackDrawable().setColorFilter(switchColor.android, android.graphics.PorterDuff.Mode.MULTIPLY);

是的,您可以使用找到的代码替换switchColor.android android.graphics.Color.parseColor("#B3FFFFFF");