[英]Android Emulator - Screen orientation does not work properly
我創建了一個虛擬的 Android 設備, 480x800
,運行它,因為我已經找到了如何更改屏幕orientation
(縱向橫向, CTRL+F11 / CTRL+F12 / KP7 / KP9 ),我使用這些鍵來更改orientation
。
但是當我嘗試其中一個鍵時,虛擬屏幕旋轉了 90 度,但方向沒有改變。 因此,按鈕垂直放置在屏幕上,所有文本也是如此。 就像旋轉 90 度的圖片一樣。
如何讓虛擬度數實際切換到其他布局文件(/res/layout-land/activity_entry.xml)
? Eclipse 的圖形查看器可以正確地在landscape/portrait
之間切換。
編輯
我在onCreateOptionsMenu(Menu menu)
方法下的活動中添加了這部分,但應用程序無法識別屏幕方向更改:
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
Context context = getApplicationContext();
CharSequence text = "Orientation changed";
int duration = Toast.LENGTH_SHORT;
Toast toast = Toast.makeText(context, text, duration);
toast.show();
}
編輯 2
當我從onCreate()
方法中調用this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE)
,它運行良好。
檢查您是否在 Manifest 文件中為該活動設置了任何 android:screenOrientation。 如果是,請將其刪除並檢查。
如果不起作用,這似乎是 android 問題論壇中報告的錯誤。 在這里查看
首先關閉數字鎖定,然后按7或按9並檢查模擬器的方向是否已更改,其他更改模擬器方向的方法是按ctrl + f12 。
您可能會發現,就像我所做的那樣,方向更改實際上已生效,但屏幕更改僅比您預期的晚了幾秒鍾。 換句話說,答案可能是“耐心蚱蜢”。
我最近遇到了這個問題,這里提供的答案並沒有解決它。 但是我發現了這個帖子:
其中提到某些模擬器目標中存在錯誤(例如我使用的 19 個)。
只需將目標更改為 17 即可使旋轉開始正常工作。
首先需要檢查您正在設置的清單文件android:screenOrientation="portrait"
如果是,則將其刪除。 它對我有用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.