-
Notifications
You must be signed in to change notification settings - Fork 57
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Requirement: How to go back specific page when use Android physical back key #268
Comments
Hi @terryatgithub , in your code sample what does As to your question about supporting question about supporting the Android back button: <behavior trigger="back-button-press" action="navigate" href="/home.xml" /> This trigger would need to be added to the One thing I'm not sure about: currently the functionality of "back" is handled by |
hi @adamstep ,
const androidBackBehavior = {
action: 'android-back-action',
callback: (element: Element, onUpdate: HvComponentOnUpdate, getRoot: HvGetRoot, updateRoot: HvUpdateRoot) => {
const href = element?.getAttributeNode('action-href')?.nodeValue;
const action = element?.getAttributeNode('action-action')?.nodeValue;
// method 1: error
hyperviewRef.current.onUpdate(href, action, {}, {});
// method 2: the same error too.
onUpdate(href, action, {}, {});
}
};
<Hyperview
ref={hyperviewRef} // <-------------------- _this is the ref_
back={goBack}
closeModal={closeModal}
fetch={(input: any) => {
return fetchWrapper(input, customHeaders);
}}
navigate={navigate}
navigation={navigation}
openModal={openModal}
push={push}
replace={navigation.replace}
formatDate={formatDate}
behaviors={[androidBackBehavior]}
/>
|
I don't think there will be an error in this case, because we don't need the
I will discuss it with the team tomorrow evening, will have a better idea at that time. Like I said, this implementation is a bit tricky since we need to account for the default behavior of |
ok, i see. thank you so much, and looking forward to good news. |
Perhaps we could use the BackHandler provided by react-native to do some custom handling? For example, to disable going back on some screen or going back to the root screen or navigate to a certain screen. May need to watch out for |
It's probably better to handle this at the app level. I've created an example on the demo app that creates a wrapper component where we can customize android back handling. It's a simplified example but one can adapt this to check other route params for example. |
@ashwinibm it's a great idea, I will adapt it and try to see how to handle different navigation requirements in different pages. |
hi, there is a question I'd like to ask:
How to go back specific page when use Android physical
back key
? (key 2 in below pic)Requirement:
when user press back key(key 1 in below pic), generally it will back to previous page.
but in some special case, it need go back further, like back to the home page.
in this case, I can set as below:
The question is:
How to do if I want to achieve the same effect with the Android physical 'back key' ? (key 2 in below pic)
React Native backhandler
Failed solution
I tried to use custom-behavior as below, but it failed with error shown in below pic:
The text was updated successfully, but these errors were encountered: