728x90
반응형
onBackAction = () => {
this.moveScreen('Settings');
}
...
<Item
title={i18n.t('Signin:myWalletAddressCheck')}
children={REF_ICON}
onPress={() => {
if(emailState === KYC_STATE_DONE && selfState === KYC_STATE_DONE && additionalState === '2') {
// navigation.navigate('ConfirmRegistration')
navigation.navigate('ConfirmAppPin', {
pinProps: {
description: i18n.t('Pincode:confirm'),
// biomatrics: false
},
cb: async () => {
navigation.navigate('ConfirmRegistration', {
action: this.onBackAction() // * 물리적으로 백버튼을 누르면 MyPage(Settings:MeScreen) 으로 이동된다.
})
}
});
} else {
this.showMyProccessWalletDialog = true
}
}
}
/>
RN의 코드에서 물리 백버튼을 이용해서 페이지 이동을 하는 경우가 있다.
물리백버튼은 BackHandler을 이용해야하는 줄 알았는데 잘못알고 있었다.
모바일은 Stack으로 쌓이는데 이 개념을 뒤늦게 알았다.
1, 2, 3 이 순차적으로 쌓이는 과정에서 3에서 전혀 쌩뚱맞은 9로 가려고 하면 안되고 2에서 9로 가게끔하는 경우는 된다. 이유는 2 -> 3을 가게했으니깐 Stack의 주권은 2에 있기 때문에?...
뭐라는건지 모르겠다... 어쨌든 navigate의 action 속성을 이용해서 물리백버튼을 handling을 했다.
반응형
'개발자의 공부방 > 모바일' 카테고리의 다른 글
Flutter] FloatingActionButton에서 그림자 제거 (0) | 2022.03.14 |
---|---|
Flutter] flutter 프로젝트 실행 크롬으로 뜨는 문제 (0) | 2022.02.01 |
Flutter] 기본 레이아웃 이해 (0) | 2022.01.25 |
RN] 화면 이동하는 방법. (0) | 2022.01.14 |
Flutter] 오류 해결이 안된다. (0) | 2022.01.07 |