LEATH
2023-07-06 17:13:50
我是 React Native 的新手,我正在使用import { createAppContainer } from 'react-navigation';
import { createStackNavigator } from 'react-navigation-stack'用于從一個(gè)屏幕導(dǎo)航到下一個(gè)屏幕,并在按后退按鈕時(shí)顯示堆棧中的屏幕。我想在屏幕從堆棧顯示時(shí)聚焦 TextInput。FirstScreen -> SecondScreen (Back Button Press)-> FirstScreen (Focus TextInput)當(dāng)FirstScreen從堆棧中顯示時(shí),會(huì)調(diào)用哪個(gè)方法?我嘗試將代碼放入ComponentDidMonunt(), ComponentWillMount(), render(), ComponentWillUnmount()方法中,但當(dāng)從堆棧中顯示 FirstScreen 時(shí),不會(huì)調(diào)用這些方法。
1 回答

慕慕森
TA貢獻(xiàn)1856條經(jīng)驗(yàn) 獲得超17個(gè)贊
嘗試在react-navigation中使用NavigationEvent?
class Profile extends React.Component {
? componentDidMount() {
? ? this._unsubscribe = navigation.addListener('focus', () => {
? ? ? // do something
? ? ? this.emailInput.focus()
? ? });
? }
? componentWillUnmount() {
? ? this._unsubscribe();
? }
? render() {
? ? ? <View>
? ? ? ? <TextInput ref={ref => { this.emailInput = ref; }}/>
? ? ? <View/>
? }
}
添加回答
舉報(bào)
0/150
提交
取消