2013-06-20 112 views
-2

我正在開發android應用程序。當我改變設備的方向時,活動重新開始。
我申請了所有android:configChanges="orientation|keyboard|keyboardHidden"但仍然無法正常工作。如何防止活動在Android中的方向更改時重新啓動?

任何幫助將不勝感激。

+0

林不太確定,但據我所知,不可能,如果應用程序重新啓動,你面臨的問題是什麼?您始終可以將活動狀態保存在包中。 –

回答

2

您可以在清單文件中添加此代碼,並使用相應的活動。

android:configChanges="orientation|keyboardHidden" android:screenOrientation="portrait" 
+0

但它會修復縱向模式下的應用程序。我想動態更改方向,但不想重新啓動活動。 – user2496512

+0

檢查您的設備方向設置。自動旋轉應該打開 – rahultheOne

0

您可以通過使用

android:screenOrientation="portrait" 

android:screenOrientation="landscape" 

否則鎖定的方向變化,

onCreate(); // will run every time the activity is recreated. 

爲避免數據丟失,可以將其保存在這個回調:

protected void onSaveInstanceState(Bundle icicle) { 
    super.onSaveInstanceState(icicle); 
    icicle.putLong("myLong", myLongValue); 
} 

而且這樣的方式進行恢復:

public void onCreate(Bundle icicle) { 
    if (icicle != null) 
     myLongValue = icicle.getLong("myLong"); 

} 

希望這有助於!

相關問題