2013-08-30 315 views
1

自從幾天以來,我一直在研究類圓形應用程序。 我在MainActivity中有兩個佈局,第一個顯示SearchBox,第二個顯示結果。 當應用程序顯示結果並且應用程序方向已更改時,應用程序會返回到第一個屏幕。 我可能不是我的engish清楚,但看到這些簡單的步驟:應用程序顯示屏幕旋轉後的主屏幕

Open App -> 1st screen(MainActivity) -> 2nd Screen(MainActivity) -> Now If I rotate the screen It goes back to 1st screen. 

我搜索一下互聯網上,但我無法找到任何東西。任何幫助將被讚賞解決這個問題。

+1

檢查[鏈接](http://developer.android.com/reference/android/app/Activity.html#ConfigurationChanges) – esentsov

+0

發佈你的第二個屏幕代碼,你正在旋轉屏幕 –

+1

在你的MainActivity的清單中添加'android:configChanges =「keyboardHidden | orientation」' – CRUSADER

回答

0

屏幕方向變化的活動得到重新啓動,所以如果你是不是因爲像空指針異常錯誤保存它的狀態,那麼它可能會破壞和有時的android沒有顯示任何日誌forceclose爲節省您的活動狀態的看看這個:Configuration Changes

0

當您更改應用程序被破壞,然後重新啓動設備的方向。對於你的應用程序來記住用戶的位置,加上其他的東西,你需要在你的onCreate中實現代碼來讀取保存的狀態,並且你需要在應用程序關閉之前保存狀態,這可以在很多地方完成哪裏取決於你的需求,但可能是在onPause(),或的onDestroy

@Override 
protected void onSaveInstanceState(Bundle outState) 
{ 
      // save your sate here 
    super.onSaveInstanceState(outState); 
} 

protected void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 

    setContentView(R.layout.layout_main); 

    // if there is a saved state restore it 
    if(savedInstanceState != null) 
    { 
    } 
    else 
    { 

    } 
}