React Native 再按一次退出

好東西當然要分享,代碼一起用
我們使用 React Native 提供的 API BackHandler

監(jiān)聽設(shè)備上的后退按鈕事件。
Android:監(jiān)聽后退按鈕事件。如果沒有添加任何監(jiān)聽函數(shù),或者所有的監(jiān)聽函數(shù)都返回false,則會執(zhí)行默認行為,退出應用。


Methods

exitApp()

static exitApp()

addEventListener()

static addEventListener(eventName, handler)

removeEventListener()

static removeEventListener(eventName, handler)

Code

當組件卸載時一定要移除 hardwareBackPress 監(jiān)聽事件

... 
componentWillMount() {
    BackHandler.addEventListener('hardwareBackPress', this.onBackAndroid)
}

lastBackPressed = 0
onBackAndroid = () => {
    if (this.lastBackPressed && this.lastBackPressed + 2000 >= Date.now()) {
        BackHandler.exitApp()
        return false
    }
    this.lastBackPressed = Date.now()
    ToastAndroid.show('再按一次退出應用', ToastAndroid.SHORT)
    return true
}

componentWillUnmount() {
    BackHandler.removeEventListener('hardwareBackPress', this.onBackAndroid)
}
...
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容