2014-01-30 61 views
3

據我所知,默認情況下,當設備旋轉時,當前活動被破壞並重新創建。我使用LeftCTRL + F12旋轉模擬器,但它並未被破壞。我有OnDestroy,OnCreateOnStartOnResume的日誌,但是當我旋轉設備時,沒有一個啓動。爲什麼模擬器在方向改變時不能正確運行?

前:

before the change

後:

after the change

的AndroidManifest.xml:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.geo_quiz" 
    android:versionCode="1" 
    android:versionName="1.0" > 

    <uses-sdk 
     android:minSdkVersion="8" 
     android:targetSdkVersion="18" /> 

    <application 
     android:allowBackup="true" 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme" > 
     <activity 
      android:name="com.geo_quiz.MainActivity" 
      android:label="@string/app_name" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
    </application> 

</manifest> 
+0

發佈您的清單文件 –

+1

它將被銷燬,除非您自己處理配置更改 – Raghunandan

+0

@Raghunandan我不記得處理配置更改......但它不會被破壞。 – Oleksiy

回答

0

根據您的屏幕截圖,似乎該設備沒有改變方向。您的活動仍然顯示肖像佈局。唯一改變的是顯示窗口的方向。當方向改變發生時,你的文本應該是直立的,在截圖中它們的「向上」指向左側。 在真實的設備上運行它,並調用onDestroy。 100%的時間。第一

  1. 嘗試NUMPAD7然後CMD + F12:保證

    編輯以下奧雷克意見。

  2. 還要確保您的ADT是最新的(不只是您的構建工具) - 您通過Eclipse>檢查更新。
  3. 如果上述方法無效,嘗試以編程方式做到這一點,這樣你就可以調試代碼(這將在真實設備上工作):在調用setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);您的onCreate
  4. 你不應該用做開發模擬器。它太慢而且不可靠。一堆東​​西不會在那裏工作。使用連接的設備。你會省下麻煩。

    我也發現了這個bug報告,其中被標記「不能重放」:http://code.google.com/p/android/issues/detail?id=17963

+0

謝謝,我知道這是現在模擬器的問題。你知道如何解決它嗎?我創建了具有不同分辨率和設置的不同模擬器設備,但它仍然不會在Ctrl + F12上旋轉設備。 – Oleksiy

+0

@Oleksiy您正在使用哪種操作系統?哪個IDE? – Guy

+0

@Oleksiy,我發現在使用舊版本操作系統配置的模擬器上會發生這種情況。嘗試創建一個AVD目標4.0+ – keno

0

進入相機的應用程序,然後再運行應用程序。相機應用會自動更改您的視圖。

相關問題