2010-08-24 71 views
2

我有一個Android應用程序,我總想以橫向模式運行。當我從待機狀態解鎖手機時,如何停止自動屏幕旋轉功能

我已經實現了所有的時間保持應用程序在橫向模式下下面的代碼:

我的應用程序清單
機器人活動中:screenOrientation =「風景」

這似乎啓動並在整個應用程序的持續時間內保持橫向視圖的應用程序。完善!然而,如果我的應用程序運行在我的HTC Aria(Android 2.1)和手機鎖上,如果我解鎖手機,我可能會看到該應用程序大概有半秒鐘,而且是縱向的,然後快速切換回以橫向模式。這是非常令人沮喪的,因爲我所有的觀點都混雜在一起,而且你可以想象它看起來不專業。這發生在模擬器和我的真實手機上。

有誰知道如何在手機解鎖時暫停應用程序暫時旋轉嗎?

加法:
我試圖重寫onConfigurationChanged(),但沒有成功。

我也試過把setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);進入onResume(),但手機解鎖時,該應用程序仍然顯示爲錯誤的方向。

+0

您是否在所有活動中放置了android:screenOrientation =「landscape」?如果您忘記這麼做,您可能會遇到問題 - 我無法在我的Nexus One上重新創建問題 – 2010-08-24 12:35:42

+0

感謝您的測試。我只有1項活動。這很奇怪,因爲它總是在風景中,除了我解鎖手機後的一瞬間。我用肖像看它,然後它很快旋轉回風景。 – justinl 2010-08-24 12:43:01

+0

這也發生在摩托羅拉機器人 - 我還沒有找到解決辦法。 – Futumsh 2010-10-26 15:41:59

回答

2

在查看許多其他僅適用於橫向導航的應用程序後,我可以看到他們的應用程序在待機後不會凍結它們的方向。我有一種感覺,這是手機的限制,所有的應用程序將在手機鎖定時切換到縱向。如果所有的應用程序都有這個「問題」,那麼我認爲不接受修復是可以接受的。

如果您發現有一種方法可以停止強制肖像取向,請發帖。

+0

有關這方面的消息嗎? – Petr 2016-09-01 12:27:38

2

嘗試設置清單文件中的方向。它可能只是工作。

+1

我在清單中的清單,應用程序和活動節點中放置了android:screenOrientation =「landscape」,但沒有運氣。 – justinl 2010-08-24 13:31:43

2

當手機解鎖時,該應用仍然顯示爲錯誤的方向。

您是否將setContentView(R.layout.main)移動到onResume,在您放置您的方向代碼後?我會嘗試設置方向,然後setContentView()