可触摸的视图反应原生不是很敏感

时间:2016-07-11 03:55:35

标签: javascript android ios react-native

我正在建立一个反应原生应用程序,我发现反应原生的Touchable视图没有响应。当我触摸按钮时,需要一些时间才能看到结果。

当我在谷歌上搜索解决方案时,我在https://facebook.github.io/react-native/docs/performance.html中发现解决方案是在requestAnimationFrame中包装的。当我喜欢链接所说的内容时,它会显示错误“this.requestAnimationFrame不是函数”

在react-native中使用requestAnimationFrame的任何示例?

这是我迄今为止所做的一些代码:

createBookingPage(){
        latestSender = bookings[0].from_name + " " + bookings[0].from_phone 
                        + " " + bookings[0].from_address;
        this.props.navigator.push({id: 4, latestSender, savedEmail, savedPassword});
      },

createBookingPage(){
        this.requestAnimationFrame(() => {
          this._createBookingPage();
        });
      },
        
    render(){
      return (<View>
              <TouchableHighlight style={styles.createButton}
                underlayColor='#ff7043' onPress={this.createBookingPage}>
                <Text style={{fontSize: 25, color: 'white'}}>+</Text>
              </TouchableHighlight>
            </View>);}
        

1 个答案:

答案 0 :(得分:-1)

在主Navigator页面中,自定义场景配置以浏览如下视图:

var SCREEN_WIDTH = require('Dimensions').get('window').width;
var BaseConfig = Navigator.SceneConfigs.FadeAndroid;

var CustomSceneConfig = Object.assign({}, BaseConfig, {
 //A very tightly wound spring will make this transition fast
 springTension: 80,
 springFriction: 0,
  //Use our custom gesture defined above
  gestures:{

 }
});



class Photoos_net extends Component {
constructor(props, context){
 super(props, context);
 this._configureScene = this._configureScene.bind(this);

 }

 render() {
   return (
     <Navigator
      initialRoute= {{id: 'Home' , component: 'Home' , index:0}}
      renderScene = {this.renderScene.bind(this)}
      statusBarBackgroundColor={'royalblue'}
      configureScene={this._configureScene}
     />

 );
}

 _configureScene(route){
    return CustomSceneConfig;
  }

现在你的转变将比以前快得多。