-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathvalueAnimator.go
43 lines (41 loc) · 1.17 KB
/
valueAnimator.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
package faithdroid
type FValueAnimator struct {
FBase
}
func ValueAnimator(a IActivity) *FValueAnimator {
v := &FValueAnimator{}
v.VID = NewToken()
v.ClassName = "ValueAnimator"
v.UI = a.GetMyActivity().UI
GlobalVars.UIs[v.UI].NewView(v.ClassName, v.VID)
GlobalVars.ViewMap[v.VID] = v
return v
}
func (v *FValueAnimator) OfFloat(fs ...float64) *FValueAnimator {
GlobalVars.UIs[v.UI].ViewSetAttr(v.VID, "OfFloat", JsonArray(fs))
return v
}
func (v *FValueAnimator) OfInt(fs ...int) *FValueAnimator {
GlobalVars.UIs[v.UI].ViewSetAttr(v.VID, "OfInt", JsonArray(fs))
return v
}
func (v *FValueAnimator) Duration(ms int64) *FValueAnimator {
GlobalVars.UIs[v.UI].ViewSetAttr(v.VID, "Duration", SPrintf(ms))
return v
}
func (v *FValueAnimator) OnValueChanged(f func(string)) *FValueAnimator {
fnId := NewToken()
fn:=func(s string) string {
f(s)
return ""
}
GlobalVars.EventHandlersMapLock.Lock()
GlobalVars.EventHandlersMap[fnId] = fn
GlobalVars.EventHandlersMapLock.Unlock()
GlobalVars.UIs[v.UI].ViewSetAttr(v.VID, "ValueChangedListener", fnId)
return v
}
func (v *FValueAnimator) Start() *FValueAnimator {
GlobalVars.UIs[v.UI].ViewSetAttr(v.VID, "Start", "")
return v
}