@@ -38,6 +38,7 @@ export default class Kohana extends BaseInput {
38
38
static defaultProps = {
39
39
easing : Easing . bezier ( 0.2 , 1 , 0.3 , 1 ) ,
40
40
iconSize : 25 ,
41
+ useNativeDriver : false
41
42
} ;
42
43
43
44
render ( ) {
@@ -63,10 +64,12 @@ export default class Kohana extends BaseInput {
63
64
style = { {
64
65
justifyContent : 'center' ,
65
66
padding : PADDING ,
66
- marginLeft : focusedAnim . interpolate ( {
67
- inputRange : [ 0 , 1 ] ,
68
- outputRange : [ - 15 - iconSize , 0 ] ,
69
- } ) ,
67
+ transform : [ {
68
+ translateX : focusedAnim . interpolate ( {
69
+ inputRange : [ 0 , 1 ] ,
70
+ outputRange : [ - 15 - iconSize , 0 ] ,
71
+ } )
72
+ } ] ,
70
73
} }
71
74
>
72
75
< Icon name = { iconName } color = { iconColor } size = { iconSize } />
@@ -77,10 +80,13 @@ export default class Kohana extends BaseInput {
77
80
style = { {
78
81
position : 'absolute' ,
79
82
top : PADDING ,
80
- left : focusedAnim . interpolate ( {
81
- inputRange : [ 0 , 1 ] ,
82
- outputRange : [ PADDING , 80 ] ,
83
- } ) ,
83
+ left : 0 ,
84
+ transform : [ {
85
+ translateX : focusedAnim . interpolate ( {
86
+ inputRange : [ 0 , 1 ] ,
87
+ outputRange : [ PADDING , 80 ] ,
88
+ } )
89
+ } ] ,
84
90
opacity : focusedAnim . interpolate ( {
85
91
inputRange : [ 0 , 1 ] ,
86
92
outputRange : [ 1 , 0 ] ,
@@ -98,7 +104,10 @@ export default class Kohana extends BaseInput {
98
104
style = { [ styles . textInput , inputStyle ] }
99
105
value = { value }
100
106
onBlur = { this . _onBlur }
101
- onFocus = { this . _onFocus }
107
+ onFocus = { event => {
108
+ this . useNativeDriver = this . props . useNativeDriver ;
109
+ this . _onFocus ( event ) ;
110
+ } }
102
111
onChange = { this . _onChange }
103
112
underlineColorAndroid = { 'transparent' }
104
113
/>
0 commit comments