第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

onSaveInstanceState()和onRestoreInstanceState()

onSaveInstanceState()和onRestoreInstanceState()

慕尼黑8549860 2019-06-25 18:17:55
onSaveInstanceState()和onRestoreInstanceState()我試圖保存和恢復(fù)Activity使用方法onSaveInstanceState()和onRestoreInstanceState().問題是它從未進(jìn)入onRestoreInstanceState()方法。有人能解釋一下為什么嗎?
查看完整描述

3 回答

?
largeQ

TA貢獻(xiàn)2039條經(jīng)驗(yàn) 獲得超8個(gè)贊

通常你恢復(fù)你的狀態(tài)onCreate()..可以在onRestoreInstanceState()也是,但不太常見。(onRestoreInstanceState()之后調(diào)用onStart(),鑒于onCreate()在此之前被調(diào)用onStart().

使用put方法將值存儲(chǔ)在onSaveInstanceState():

protected void onSaveInstanceState(Bundle icicle) {
  super.onSaveInstanceState(icicle);
  icicle.putLong("param", value);}

中的值。onCreate():

public void onCreate(Bundle icicle) {
  if (icicle != null){
    value = icicle.getLong("param");
  }}

您不必存儲(chǔ)視圖狀態(tài),因?yàn)樗鼈兪谴鎯?chǔ)的。自動(dòng)通過調(diào)用Super.onSaveInstanceState(冰柱);


查看完整回答
反對(duì) 回復(fù) 2019-06-25
?
浮云間

TA貢獻(xiàn)1829條經(jīng)驗(yàn) 獲得超4個(gè)贊

onRestoreInstanceState()被稱為只有在重新創(chuàng)造的時(shí)候之后的活動(dòng)被殺被操作系統(tǒng)。這種情況發(fā)生在下列情況:

  • 設(shè)備更改的方向(您的活動(dòng)被破壞并重新創(chuàng)建)
  • 在您的前面還有另一個(gè)活動(dòng),操作系統(tǒng)會(huì)在某個(gè)時(shí)候殺死您的活動(dòng),以便釋放內(nèi)存(例如)。下次你開始活動(dòng)的時(shí)候

    onRestoreInstanceState()

    會(huì)被召喚。

相反,如果你在你的活動(dòng)中,你擊中Back按鈕,您的活動(dòng)將為Finish()ed(即將其視為退出桌面應(yīng)用程序),下次啟動(dòng)應(yīng)用程序時(shí)將啟動(dòng)“新”,即沒有保存狀態(tài),因?yàn)楫?dāng)您單擊時(shí)有意退出它。Back.

另一個(gè)令人困惑的原因是,當(dāng)一個(gè)應(yīng)用程序失去對(duì)另一個(gè)應(yīng)用的關(guān)注時(shí)。onSaveInstanceState()調(diào)用,但當(dāng)您導(dǎo)航回應(yīng)用程序時(shí)onRestoreInstanceState()可能不會(huì)被召喚。這就是原問題中所描述的情況,即如果你的活動(dòng)在其他活動(dòng)之前的時(shí)期內(nèi)沒有被殺死的話。onRestoreInstanceState()不會(huì)被調(diào)用,因?yàn)槟愕幕顒?dòng)幾乎是“活著”的。

總而言之,如文件所述onRestoreInstanceState():

大多數(shù)實(shí)現(xiàn)只需使用onCreate(Bundle)來恢復(fù)它們的狀態(tài),但有時(shí)在完成所有初始化或允許子類決定是否使用默認(rèn)實(shí)現(xiàn)之后,在這里這樣做是很方便的。此方法的默認(rèn)實(shí)現(xiàn)將執(zhí)行以前由onSaveInstanceState(Bundle)凍結(jié)的任何視圖狀態(tài)的還原。

就像我讀到的:沒有理由重寫onRestoreInstanceState()除非你是子類Activity預(yù)計(jì)會(huì)有人對(duì)您的子類進(jìn)行子類分類。


查看完整回答
反對(duì) 回復(fù) 2019-06-25
?
搖曳的薔薇

TA貢獻(xiàn)1793條經(jīng)驗(yàn) 獲得超6個(gè)贊

你存錢的狀態(tài)onSaveInstanceState()稍后可在onCreate()方法調(diào)用。所以使用onCreate(及其Bundle參數(shù))以恢復(fù)活動(dòng)的狀態(tài)。


查看完整回答
反對(duì) 回復(fù) 2019-06-25
  • 3 回答
  • 0 關(guān)注
  • 683 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)