當前位置:首頁 » 安卓系統 » 安卓屏幕旋轉怎麼設置

安卓屏幕旋轉怎麼設置

發布時間: 2022-01-09 06:40:06

安卓手機屏幕旋轉鎖定怎麼設置

只要把那個通知欄滑下來,放那裡自動旋屏關閉掉,然後他就不會屏幕在旋轉。

Ⅱ 如何讓安卓手機判定屏幕旋轉90度 how to make android mobile phone to determine

在介紹之前,我們需要先了解默認情況下android屏幕旋轉的機制:
默認情況下,當用戶手機的重力感應器打開後,旋轉屏幕方向,會導致當前activity發生onDestroy-> onCreate,這樣會重新構造當前activity和界面布局,如果在Camera界面,則表現為卡頓或者黑屏一段時間。如果是在橫豎屏UI設計方面,那麼想很好地支持屏幕旋轉,則建議在res中建立layout-land和layout-port兩個文件夾,把橫屏和豎屏的布局文件分別放入對應的layout文件夾中。
了解了這些以後,我們對android的屏幕旋轉方法進行如下總結:
1. AndroidManifest.xml設置
如果單單想設置橫屏或者豎屏,那麼只需要添加橫豎屏代碼:
android:screenOrientation="landscape"橫屏設置;
android:screenOrientation="portrait"豎屏設置;

這種方法的優點:即使屏幕旋轉,Activity也不會重新onCreate。
缺點:屏幕只有一個方向。
2. 代碼動態設置
如果你需要動態改變橫豎屏設置,那麼,只需要在代碼中調用setRequestedOrientation()函數:
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
//橫屏設置
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
//豎屏設置
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED);
//默認設置

這種方法優點:可以隨意動態設置,滿足我們人為改變橫豎屏的要求,同時滿足橫豎屏UI不同的設計需求;
缺點:如果改變設置,那麼,Activity會被銷毀,重新構建,即重新onCreate;
3. 重寫onConfigurationChanged
如果你不希望旋轉屏幕的時候Activity被不斷的onCreate(這種情況往往會造成屏幕切換時的卡頓),那麼,可以使用此方法:
首先,在AndroidMainfest.xml中添加configChanges:
<activity android:name=".Test"
android:configChanges="orientation|keyboard">
</activity>

注意,keyboardHidden表示鍵盤輔助功能隱藏,如果你的開發API等級等於或高於13,還需要設置screenSize,因為screenSize會在屏幕旋轉時改變;
android:configChanges="keyboardHidden|orientation|screenSize"

然後,在Activity中重寫onConfigurationChanged方法,這個方法將會在屏幕旋轉變化時,進行監聽處理:
public void onConfigurationChanged(Configuration newConfig) {
// TODO Auto-generated method stubsuper.onConfigurationChanged(newConfig);
if (newConfig.orientation==Configuration.ORIENTATION_LANDSCAPE){
// Nothing need to be done here
} else {
// Nothing need to be done here
}
}

這個方法的優點:我們可以隨時監聽屏幕旋轉變化,並對應做出相應的操作;
缺點:它只能一次旋轉90度,如果一下子旋轉180度,onConfigurationChanged函數不會被調用。
4. 結合OrientationEventListener,自定義旋轉監聽設置
如果你想更加完美,更加完全的掌控監聽屏幕旋轉變化,比如,轉屏時不想重新onCreate,尤其是在Camera界面,不想出現旋轉preview時屏幕的卡頓、黑屏等問題,那麼,可以嘗試:

首先,創建OrientationEventListener對象:
private OrientationEventListener mOrientationListener;
// screen orientation listener
private boolean mScreenProtrait = true;
private boolean mCurrentOrient = false;

然後,自定義屏幕變化回調介面
abstract protected void OrientationChanged(int orientation);
//screen orientation change event

最後,自定義監聽類
private final void () {
mOrientationListener = new OrientationEventListener(this) {
@Override
public void onOrientationChanged(int rotation) {
if (((rotation >= 0) && (rotation <= 45)) || (rotation >= 315)||((rotation>=135)&&(rotation<=225))) {//portrait
mCurrentOrient = true;
if(mCurrentOrient!=mScreenProtrait)
{
mScreenProtrait = mCurrentOrient;
OrientationChanged(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
Log.d(TAG, "Screen orientation changed from Landscape to Portrait!");
}
}
else if (((rotation > 45) && (rotation < 135))||((rotation>225)&&(rotation<315))) {//landscape
mCurrentOrient = false;
if(mCurrentOrient!=mScreenProtrait)
{
mScreenProtrait = mCurrentOrient;
OrientationChanged(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
Log.d(TAG, "Screen orientation changed from Portrait to Landscape!");
}
}
}
};
mOrientationListener.enable();
}

在onCreate()中調用:
();

這個方法的優點:你可以任意隨時准確的監聽屏幕旋轉變化的狀態,可以隨時動態改變橫豎屏狀態;
註:對於Camera來說,你可以設置初始化為橫屏或者豎屏,然後對外提供旋轉監聽,這樣,既可以獲得屏幕旋轉狀態,讓你做出相應的操作,又不會出現重新onCreate當前Activity造成的卡頓與短暫的黑屏切換。

Ⅲ 安卓手機屏幕怎麼轉過來,固定住

三星手機開啟/關閉屏幕旋轉的操作方法:
1.雙指下拉頂簾,查找「屏幕旋轉」圖標,將其點綠即可開啟,反之關閉。
2.也可打開手機設定-顯示-查找「屏幕旋轉」-開啟/關閉即可。

Ⅳ 如何在啟動時讓android系統屏幕旋轉90度

設備平放,屏幕朝正上方。以下四個常量分別代表:
private static final int ROTATION_0 = 0;//初始情況。這個時候設備是橫屏還是豎屏與硬體設備安裝時默認的顯示方向有關。
private static final int ROTATION_90 = 1;//設置屏幕方向自動旋轉後,右側翻起側立時,屏幕會旋轉到這個方向。
private static final int ROTATION_270 = 2;//設置屏幕方向自動旋轉後,左側翻起度側立時,屏幕會旋轉到這個方向。
private static final int ROTATION_180 = 3;//設置屏幕方向自動旋轉後,屏幕底部側立時,屏幕會旋轉到這個方向。

再看兩個數組:
view plain
private static final int[][][] THRESHOLDS_WITH_180 = new int[][][] {
{{60, 165}, {165, 195}, {195, 300}},
{{0, 30}, {165, 195}, {195, 315}, {315, 360}},
{{0, 45}, {45, 165}, {165, 195}, {330, 360}},
{{0, 45}, {45, 135}, {225, 315}, {315, 360}},
};
private static final int[][] ROTATE_TO_WITH_180 = new int[][] {
{ROTATION_90, ROTATION_180, ROTATION_270},
{ROTATION_0, ROTATION_180, ROTATION_90, ROTATION_0},
{ROTATION_0, ROTATION_270, ROTATION_180, ROTATION_0},
{ROTATION_0, ROTATION_90, ROTATION_270, ROTATION_0},
};

當前屏幕旋轉方向為ROTATION_0時,取int[][] threshold=THRESHOLDS_WITH_180[0];
當前屏幕旋轉方向為ROTATION_90時,取int[][] threshold=THRESHOLDS_WITH_180[1];
當前屏幕旋轉方向為ROTATION_270時,取int[][] threshold=THRESHOLDS_WITH_180[2];
當前屏幕旋轉方向為ROTATION_180時,取int[][] threshold=THRESHOLDS_WITH_180[3];

其中,threshold中的每一個元素由兩個值構成,用來表示一個范圍。

WindowOrientationListener會注冊一個Accelerator類型的SensorEventListener,當有新的SensorEvent產生時,調用filterOrientation產生一個int orientation值。這個值會在threshold的各個元素表示的范圍中匹配,看會落在哪個范圍。假設當前屏幕方向為ROTATION_0,那麼threshold={{60, 165}, {165, 195}, {195, 300}},假設這個時候把屏幕左側翻起90度。filterOrientation計算出的orientation值落在了第三個元素范圍內,那麼去ROTATE_TO_WITH_180中尋找與它對應的值,發現是ROTATION_270,那麼就把當前屏幕旋轉方向改變為270度。threshold的取值就變成了THRESHOLDS_WITH_180[2]。當把屏幕再次放平時,filterOrientation計算出的orientation值會落在第一個元素表示的范圍內。去ROTATE_TO_WITH_180中尋找與它對應的值,發現是ROTATION_0,那麼當前屏幕旋轉方向被改變為0度。
還有一個變數比較重要,mAllow180Rotation,這個變數設置為false時,就不使用THRESHOLDS_WITH_180和ROTATE_TO_WITH_180這一對數組來做上面這些變的了,就使用THRESHOLDS和ROTATE_TO。
其實,我研究了半天也沒有搞清filterOrientation的演算法以及THRESHOLDS_WITH_180和THRESHOLDS這兩個數組裡面的每個數字代表的具體意義。最後只搞清了上面的這個流程,還有ROTATION_0, ROTATION_90, ROTATION_270, ROTATION_180這四個角度分別代表哪四個方向。但這足以應付我們要做的事情了。
比如,我想讓屏幕最多隻旋轉90度和180度,不讓它有旋轉270度的機會。那就把ROTATE_TO_WITH_180裡面的ROTATION_270全部變成90度。這樣,應該旋轉到270度時,就會旋轉到90度了。如果不想讓屏幕旋轉,把所有值都改成ROTATION_0就可以了。

再深入挖掘一下這個話題
PhonwWindowManager是唯一實現WindowOrientationListener介面的類,它管理著整個設備界面的顯示。當PhonwWindowManager通過WindowOrientationListener知道屏幕方向發生旋轉時,會告訴WindowManagerService:
mWindowManager.setRotation(rotation, false, mFancyRotationAnimation);
而WindowManagerService得到這個通知後,會做兩個比較重要的事情:
1、Surface.setOrientation(0, rotation, animFlags);
2、mRotationWatchers.get(i).onRotationChanged(rotation);
我們知道,每個Activity都有一個View樹,每個View樹都是繪畫在一個Surface上面的。通過上面這兩步,先把Surface給旋轉了,再告訴Activity重新繪制View樹,就完了整個屏幕的旋轉。

Ⅳ 怎樣設置手機屏幕旋轉

手機屏幕旋轉設置操作方法:

1、首先,我們打開我們的手機,然後我們點擊設置;

Ⅵ 安卓設置中怎麼沒有屏幕旋轉這個功能了

有的,方法如下:

  1. 點擊系統設置

  2. 然後點擊顯示

Ⅶ 請問安卓手機在哪裡設置重力感應啊(轉屏)

你好,屏幕轉屏和重力感應是沒有牽連的,重力感應也不能設置,只能設置距離感應,距離感應就是你打電話時手機屏幕會自動黑掉,等你打完了,從耳朵邊拿開的時候手機屏幕會自動亮起來,這個就是距離感應,你要設置轉屏,設置—顯示—屏幕自動旋轉,去掉勾就可以了,如果手機游戲沒有重力感應了,可能是那款游戲不支持,可以下載雷霆賽車來試試,如果還是不能使用重力感應,那就說明你手機壞了。

(7)安卓屏幕旋轉怎麼設置擴展閱讀:

通過對力敏感的感測器,感受手機在變換姿勢時,重心的變化,使手機游標變化位置從而實現選擇的功能。

手機重力感應技術:利用壓電效應實現,簡單來說是是測量內部一片重物(重物和壓電片做成一體)重力正交兩個方向(x軸與y軸)的分力大小,來判定水平方向。

手機重力感應指的是手機內置重力搖桿晶元,支持搖晃切換所需的界面和功能,甩歌甩屏,翻轉靜音,甩動切換視頻等,是一種非常具有使用樂趣的功能。

感測器是一種能把物理量或化學量轉變成便於利用的電信號的器件。國際電工委員會(IEC:International Electrotechnical Committee)的定義為:「感測器是測量系統中的一種前置部件,它將輸入變數轉換成可供測量的信號」。按照Gopel等的說法是:「感測器是包括承載體和電路連接的敏感元件」,而「感測器系統則是組合有某種信息處理(模擬或數字)能力的系統」。感測器是感測系統的一個組成部分,它是被測量信號輸入的第一道關口。 感測器把某種形式的能量轉換成另一種形式的能量。

Ⅷ 手機屏幕自動旋轉怎麼設置

蘋果手機怎麼設置屏幕旋轉?介紹一

蘋果手機設置屏幕旋轉,首先,打開蘋果手機的屏幕,用手指從屏幕底部向上滑動,即可打開手機的控制中心。第二,是在控制中心的右上角的那個旋轉按鈕,就是要找的關閉屏幕旋轉的 開關 。第三,點擊這個按鈕,當按鈕高亮顯示的時候,就說明我們已經關閉了手機屏幕旋轉功能,而再點擊一次,按鈕變暗,說明自動轉屏打開。通過呼出這個按鈕,就可以輕松的設置蘋果手機的屏幕旋轉了。

蘋果手機怎麼設置屏幕旋轉?介紹二

如果大家的蘋果手機打開了這個功能,但是屏幕還是旋轉不了,這是怎麼回事呢?其實這個問題和蘋果手機的硬體和系統都沒有關系,是因為不小心選擇了放 大顯 示導致的,小夥伴們只需要到【設置】中取消放大顯示,選擇原來的標准顯示,再打開屏幕旋轉的功能,就可以實現自動轉屏了。

蘋果手機怎麼設置屏幕旋轉?介紹三

蘋果手機設置屏幕旋轉,還可以在蘋果手機桌的通知狀態欄,用手指向下滑動 打開通知中心,或者在「設置」中點擊右上角屏幕旋轉圖標,出現提示「豎排方向鎖定:關閉」,即代表屏幕鎖定關閉,橫放手機時屏幕會自動旋轉。除此之外,還可以打開蘋果手機設置,進入通用,在輔助功能中將AssistiveTouch這個功能打開。然後,蘋果手機界面上會浮現出一個小方塊,點下小方塊進入設備,在更多裡面點開多任務,用手指朝右劃動,有一個帶鎖圖標。第三,點擊下,圖標中鎖沒有了,這時蘋果手機的屏幕就能夠自動旋轉調整畫面了。

Ⅸ 安卓手機怎樣才可以把屏幕上下倒過來,用什麼軟體,求高手指點

摘要 1.雙指下拉頂簾,查找「屏幕旋轉」圖標,將其點綠即可開啟,反之關閉。

熱點內容
ise怎麼配置晶元 發布:2024-04-19 08:27:31 瀏覽:997
免費搭建在線查詢伺服器 發布:2024-04-19 08:17:28 瀏覽:46
vs資料庫實例 發布:2024-04-19 08:14:54 瀏覽:295
vfp9反編譯 發布:2024-04-19 08:11:31 瀏覽:381
火車軟卧無線密碼是多少 發布:2024-04-19 07:38:59 瀏覽:423
vb系統文件夾 發布:2024-04-19 07:29:58 瀏覽:740
qt怎麼添加文件夾 發布:2024-04-19 07:22:53 瀏覽:256
sql查詢表是否存在 發布:2024-04-19 06:11:48 瀏覽:623
T178Tccftp 發布:2024-04-19 06:11:35 瀏覽:186
電腦遠程訪問自己的伺服器 發布:2024-04-19 00:08:03 瀏覽:96