簡體   English   中英

在Android中重新創建活動

[英]Recreating activities in Android

在Android應用程序中,旋轉屏幕時,將調用onCreate()繪制視圖並創建對象。 TextView對象恢復以前的文本,而ImageView對象則不能。 有什么理由嗎? 任何答案都將幫助我了解Android的工作原理:)

非常感謝,

更改方向后,將重新創建整個活動。 如果要在方向更改后恢復數據,可以使用onSaveInstanceState和onRestoreInstanceState進行操作。 更改方向時,將調用onSaveInstanceState以將值保存在Bundle中,並且在重新創建Activity后,將調用onRestoreInstaceState再次從Bundle中加載值。 您可以這樣使用:

  @Override
public void onSaveInstanceState(Bundle savedInstanceState) {
    super.onSaveInstanceState(savedInstanceState);

    // "Value" is a tag with which you can load the String again in onRestoreInstanceState.
    savedInstanceState.putString("Value", this.stringToSave);   
}

@Override
public void onRestoreInstanceState(Bundle savedInstanceState) {
    super.onRestoreInstanceState(savedInstanceState);

    // Use the tag "Value" to load the String again.
    this.stringToSave = savedInstanceState.getString("Value"); 
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM