为了账号安全,请及时绑定邮箱和手机立即绑定

防止后处理程序最小化应用程序

防止后处理程序最小化应用程序

倚天杖 2022-07-08 18:17:08
按下设备上的后退按钮时,如何防止应用程序最小化/退出?在我的设备上按下返回按钮时,我试图分配“浏览器返回”功能,这是我的代码:import 'react-native-get-random-values';import React, { useState, useRef, Component, useEffect  } from 'react'import {  Alert,  SafeAreaView,  StyleSheet,  StatusBar,  View,  Text,  ScrollView,  BackHandler,  RefreshControl} from 'react-native'import WebView from 'react-native-webview'import Icon from 'react-native-vector-icons/FontAwesome';import { Button } from 'react-native-elements';const App = () => {  function backButtonHandler(){}  function refreshHandler(){    if (webviewRef.current) webviewRef.current.reload()  }  useEffect(() => {    BackHandler.addEventListener("hardwareBackPress", backButtonHandler);    return () => {      BackHandler.removeEventListener("hardwareBackPress", backButtonHandler);    };  }, [backButtonHandler]);  let jscode = `window.onscroll=function(){window.ReactNativeWebView.postMessage(document.documentElement.scrollTop||document.body.scrollTop)}`;  const [canGoBack, setCanGoBack] = useState(false)  const [currentUrl, setCurrentUrl] = useState('')  const [refreshing, setRefreshing] = useState(false);  const [scrollviewState, setEnableRefresh] = useState(false);  const webviewRef = useRef(null)  const scrollviewRef = useRef(false)  backButtonHandler = () => {    if (webviewRef.current) webviewRef.current.goBack()  }我的问题是当我按下设备上的后退按钮时,它确实调用了backButtonHandler函数并且我的 webview 导航回来,但同时应用程序也最小化了..有没有办法防止这种情况?
查看完整描述

1 回答

?
慕斯709654

TA贡献1840条经验 获得超5个赞

将您的 backButtonHandler 方法更改为仅返回 true,当您的 backHandler 方法返回 true 时,它实际上什么也不做 onPress Back button :


 

 backButtonHandler = () => {

    return true;

  }


查看完整回答
反对 回复 2022-07-08
  • 1 回答
  • 0 关注
  • 130 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号