تغییر رنگ Switch در b4a

برای تغییر رنگ Switch کتابخونه های JavaObject و Phone رو تیک بزنین و این تابع هارو اضافه کنین:

#AdditionalJar: com.android.support:support-compat

Sub SetSwitchColors (Switch As Switch, On As Int, Off As Int)
Dim p As Phone
If p.SdkVersion < 16 Then Return
Dim DrawableCompat As JavaObject
DrawableCompat.InitializeStatic("android.support.v4.graphics.drawable.DrawableCompat")
Dim jo As JavaObject = Switch
DrawableCompat.RunMethod("setTintList", Array(jo.RunMethod("getThumbDrawable", Null), CreateColorStateList(On, Off)))
End Sub


Sub CreateColorStateList(On As Int,Off As Int) As Object
Dim sd As StateListDrawable 'ignore
Dim States(2,1) As Int
States(0,0) = sd.State_Checked
States(1,0) = sd.State_Enabled
Dim CSL As JavaObject
CSL.InitializeNewInstance("android.content.res.ColorStateList",Array(States, Array As Int(On, Off)))
Return CSL
End Sub

امید وارم مفید بوده باشد برای شما دوستان عزیز .

دیدگاهتان را بنویسید