2011-06-01 85 views
0

我在開發使用佈局和佈局的應用程序時出現問題,數據不在這兩個佈局之間維護。請幫幫我。我也嘗試過配置()。在android中的風景和肖像之間的處理狀態

public void onConfigurationChanged(Configuration newConfig){ 
    super.onConfigurationChanged(newConfig); 
    setContentView(R.layout.main); 
} 

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
} 
+0

哪些數據?持續設置?局部變量...? – 2011-06-01 14:24:07

回答

0

如果您想要自己處理屏幕更改,您還必須在清單文件中聲明它。 添加到您的活動在AndroidManifest.xml

android:configChanges="keyboardHidden|orientation" 
2

當設備方向改變,onCreate事件被再次調用。您需要將onSaveInstanceState中包含的任何信息保存到捆綁包中,並在onCreate事件中重新加載它。

代碼的OnCreate

protected void onCreate(Bundle savedInstanceState) { 
// TODO Auto-generated method stub 
super.onCreate(savedInstanceState); 

    if(savedInstanceState!= null) 
    { 
    restoreDataFromBundle(savedInstanceState); 
    } 
} 

代碼的onSaveInstanceState

@Override 
protected void onSaveInstanceState(Bundle outState) { 
// TODO Auto-generated method stub 
    outState.putString("key", "value"); 
    super.onSaveInstanceState(outState); 
} 

代碼restoreDataFromBundle

private void restoreDataFromBundle(Bundle savedInstanceState) { 
    String myString = savedInstanceState.getStringArray("key"); 
} 
+0

我已經試過了。但沒有工作 – user746140 2011-06-02 12:31:58