React native 设备物理按钮点击处理

React native 设备物理按钮点击处理,react-native,React Native,点击设备的“主页”和“最近使用的应用”按钮是否可以获得回拨 虽然我们可以处理回,我也想处理其他我搜索,但找不到任何方法为这一个 提前感谢我们没有此事件的回调,但您可以使用生命周期方法来检测用户何时单击“主页”按钮 下面是一个例子 import React,{Component}来自'React'; 从“react native”导入{AppState,Text}; 类AppStateExample扩展组件{ 状态={ appState:appState.currentState, }; comp

点击设备的“主页”和“最近使用的应用”按钮是否可以获得回拨

虽然我们可以处理回,我也想处理其他我搜索,但找不到任何方法为这一个


提前感谢

我们没有此事件的回调,但您可以使用生命周期方法来检测用户何时单击“主页”按钮

下面是一个例子

import React,{Component}来自'React';
从“react native”导入{AppState,Text};
类AppStateExample扩展组件{
状态={
appState:appState.currentState,
};
componentDidMount(){
AppState.addEventListener('change',this.\u handleAppStateChange);
}
组件将卸载(){
AppState.removeEventListener('change',this.\u handleAppStateChange);
}
_HandLeapStateChange=(nextAppState)=>{
如果(
this.state.appState.match(/active/)&&
nextAppState===“背景”
) {
console.log('user click button home');
}
this.setState({appState:nextapstate});
};
render(){
返回的当前状态为:{this.state.appState};
}
}

我们没有此事件的回调,但您可以使用生命周期方法来检测用户何时单击“主页”按钮

下面是一个例子

import React,{Component}来自'React';
从“react native”导入{AppState,Text};
类AppStateExample扩展组件{
状态={
appState:appState.currentState,
};
componentDidMount(){
AppState.addEventListener('change',this.\u handleAppStateChange);
}
组件将卸载(){
AppState.removeEventListener('change',this.\u handleAppStateChange);
}
_HandLeapStateChange=(nextAppState)=>{
如果(
this.state.appState.match(/active/)&&
nextAppState===“背景”
) {
console.log('user click button home');
}
this.setState({appState:nextapstate});
};
render(){
返回的当前状态为:{this.state.appState};
}
}

当然不是,但是你可以使用另一种方法,即生命周期方法当然不是,但是你可以使用另一种方法,即生命周期方法
import React, {Component} from 'react';
import {AppState, Text} from 'react-native';

class AppStateExample extends Component {
  state = {
    appState: AppState.currentState,
  };

  componentDidMount() {
    AppState.addEventListener('change', this._handleAppStateChange);
  }

  componentWillUnmount() {
    AppState.removeEventListener('change', this._handleAppStateChange);
  }

  _handleAppStateChange = (nextAppState) => {
    if (
      this.state.appState.match(/active/) &&
      nextAppState === 'background'
    ) {
      console.log('user click button home');
    }
    this.setState({appState: nextAppState});
  };

  render() {
    return <Text>Current state is: {this.state.appState}</Text>;
  }
}