рдЬрдм рдореИрдВ рд░рд╛рдЬреНрдп рдХреЛ рдмрджрд▓рдХрд░ рджреГрд╢реНрдп рд╢реИрд▓реА рдХреЛ рдмрджрд▓рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реВрдВред рдпрд╣ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдирд╣реАрдВ рджреЗрдЧрд╛ред рдХреНрдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреЛрдИ рд╡рд┐рдЪрд╛рд░ рд╣реИ рдХреНрдпреЛрдВ?
var React = require('react-native');
var { View, Text} = React;
var TouchIt = React.createClass({
getInitialState() {
return {
style: style
}
},
shouldSetResponder() {
return true;
},
shouldSetMoveResponder() {
return true;
},
responderGrant() {
console.log('finger in');
},
responderMove() {
var style = this.state.style;
style.backgroundColor = this.getRandomColor();
this.setState({backgroundColor: backgroundColor});
},
responderRelease() {
console.log('finger out');
},
getRandomColor() {
var randomColor = '#'+Math.random().toString(16).substr(-6);
return randomColor;
},
render() {
return (
<View style={this.state.style}
onStartShouldSetResponder={this.shouldSetResponder}
onMoveShouldSetResponder={this.shouldSetMoveResponder}
onResponderGrant={this.responderGrant}
onResponderMove={this.responderMove}
onResponderRelease={this.responderRelease}
>
<Text>{this.style.backgroundColor}</Text>
</View>
);
}
});
var style = {
backgroundColor: 'rgb(11, 135, 91)',
flex: 1
}
module.exports = TouchIt;
рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдЪреАрдЬреЛрдВ рдХреЛ рдареАрдХ рдХрд░реЗрдЧрд╛, рд▓реЗрдХрд┐рди рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдХрд░реНрддрд╛ рдореЗрдВ рдкрд╣рд▓реА рдкрдВрдХреНрддрд┐ рдХреЛ рдмрджрд▓рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ var style = {...this.state.style};
рддрд╛рдХрд┐ рдЖрдк рдПрдХ рдирдИ рд╡рд╕реНрддреБ рдмрдирд╛ рд╕рдХреЗрдВ рдФрд░ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдХрд░ рд╕рдХреЗрдВ рдХрд┐ рджреВрд╕рд░реЗ рд░реЗрдВрдбрд░ рдкрд╛рд╕ рдкрд░ рдирдпрд╛ рджреГрд╢реНрдп рдкрд╣рд▓реЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдПрдХ рдЕрд▓рдЧ рд╢реИрд▓реА рд╣реИ .
100% рдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдореИрдВрдиреЗ рдЗрд╕рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЗ рдкрд╛рд╕ рджреЛ рдкреГрд╖реНрдарднреВрдорд┐ рд░рдВрдЧ рд╣реИрдВ, рдПрдХ рдЖрдкрдХреА "var рд╢реИрд▓реА" рдореЗрдВ рдФрд░ рджреВрд╕рд░рд╛ "this.state" рдореЗрдВ рд╣реИ рдФрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЙрдиреНрд╣реЗрдВ рдорд┐рд▓рд╛ рд░рд╣реЗ рд╣реИрдВред рдЖрдкрдХреЛ рдпрд╣ рддрдп рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдЖрдк рдкреГрд╖реНрдарднреВрдорд┐ рд░рдВрдЧ рдХреЛ рдпрд╣рд╛рдВ рдпрд╛ рд╡рд╣рд╛рдВ рд╕рд╣реЗрдЬрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдФрд░ рдХреНрд░рдорд╢рдГ рдЕрдкрдиреЗ рдкреНрд░рддреНрдпреБрддреНрддрд░рдХрд░реНрддрд╛ рд╡рд┐рдзрд┐ рдореЗрдВ рд╕рд╣реА рдорд╛рди рд╕реЗрдЯ рдХрд░реЗрдВред
рд╣реЗрдпрд░ рдпреВ рдЧреЛ!
var React = require('react-native');
var {
AppRegistry,
Image,
ScrollView,
StyleSheet,
Text,
View,
} = React;
var ExampleApp = React.createClass({
getInitialState() {
return {
style: style
}
},
shouldSetResponder() {
return true;
},
shouldSetMoveResponder() {
return true;
},
responderGrant() {
console.log('finger in');
},
responderMove() {
var backgroundColor = this.getRandomColor();
this.setState({style: {backgroundColor}});
},
responderRelease() {
console.log('finger out');
},
getRandomColor() {
var randomColor = '#'+Math.random().toString(16).substr(-6);
return randomColor;
},
render() {
return (
<View style={[{flex: 1}, this.state.style]}
onStartShouldSetResponder={this.shouldSetResponder}
onMoveShouldSetResponder={this.shouldSetMoveResponder}
onResponderGrant={this.responderGrant}
onResponderMove={this.responderMove}
onResponderRelease={this.responderRelease}
>
<Text>{this.state.style.backgroundColor}</Text>
</View>
);
}
});
var style = {
backgroundColor: 'rgb(11, 135, 91)',
flex: 1
}
рдЪрд░ рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рд╕рд╛рд░реА рд╕рдорд╕реНрдпрд╛рдПрдВ, рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдКрдкрд░ рдореЗрд░рд╛ рдХреЛрдб рджреЗрдЦреЗрдВ рдХрд┐ рдЖрдк рдХрд╣рд╛рдВ рдЧрд▓рдд рд╣реЛ рдЧрдП :) рд╡реИрд╕реЗ, рдЗрд╕ рддрд░рд╣ рдХрд╛ рдкреНрд░рд╢реНрди рд╕реНрдЯреИрдХ рдУрд╡рд░рдлреНрд▓реЛ рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░ рдЕрдиреБрдХреВрд▓ рд╣реИ!
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдЪреАрдЬреЛрдВ рдХреЛ рдареАрдХ рдХрд░реЗрдЧрд╛, рд▓реЗрдХрд┐рди рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдХрд░реНрддрд╛ рдореЗрдВ рдкрд╣рд▓реА рдкрдВрдХреНрддрд┐ рдХреЛ рдмрджрд▓рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ
var style = {...this.state.style};
рддрд╛рдХрд┐ рдЖрдк рдПрдХ рдирдИ рд╡рд╕реНрддреБ рдмрдирд╛ рд╕рдХреЗрдВ рдФрд░ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдХрд░ рд╕рдХреЗрдВ рдХрд┐ рджреВрд╕рд░реЗ рд░реЗрдВрдбрд░ рдкрд╛рд╕ рдкрд░ рдирдпрд╛ рджреГрд╢реНрдп рдкрд╣рд▓реЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдПрдХ рдЕрд▓рдЧ рд╢реИрд▓реА рд╣реИ .