android手機旋轉
A. 如何讓安卓手機判定屏幕旋轉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造成的卡頓與短暫的黑屏切換。
B. 安卓手機屏幕旋轉鎖定怎麼設置
只要把那個通知欄滑下來,放那裡自動旋屏關閉掉,然後他就不會屏幕在旋轉。
C. 安卓手機怎樣旋轉屏幕
打開手機,找到「設置」並打開;
在「設置」面板,「設備」一欄找到「顯示」,點擊打開;
在「顯示」界面勾選「自動旋轉屏幕」即可。
完成設置後,安卓手機就能夠根據重力感應旋轉屏幕。
D. 怎麼才能不讓android手機自動旋轉屏幕
若手機屏幕旋轉總是自動開啟,建議:
1.下拉屏幕頂簾,將屏幕旋轉關閉嘗試。
2.更新手機系統版本嘗試:設置-關於手機(關於設備)-手動下載更新/自動下載更新(軟體更新/系統更新-更新)。註:升級前請備份設備中數據。
3.如仍然自動開啟屏幕旋轉功能,請您備份手機中數據(聯系人、信息、圖片等),將手機恢復出廠設置嘗試。
若無效,請您攜帶購機發票、包修卡和機器送到三星服務中心檢查。
E. 華為手機自動旋轉失靈怎麼辦
手機自動旋轉屏幕失效了的原因及解決方法如下:
1、屏幕自動旋轉失靈的原因分為硬體問題和軟體問題,是由於Android手機的重力感應器出了問題,或者刷機過於頻繁造成的。2、檢查手機通知面板中屏幕旋轉功能是否開啟。3、打開照相機,在取景狀態下檢查功能圖標能否隨手機旋轉。4、檢查手機是否有新版本推送,升級至最新版本嘗試。5、備份手機數據將手機恢復到出廠設置。
F. 安卓手機怎樣才可以把屏幕上下倒過來,用什麼軟體,求高手指點
摘要 1.雙指下拉頂簾,查找「屏幕旋轉」圖標,將其點綠即可開啟,反之關閉。
G. 安卓手機屏幕翻轉在哪兒設置
可以打開手機,在手機的上方向邊用一根手指輕輕點住往下一劃,就會出現一些簡易設置,
有方向鎖定,點一下變成藍色就可以了。如果沒有這功能,可以打開手機,在手機里找設置一項,打開設置找屏幕管理類的項目,也是找到方向鎖定打開即可。
H. 怎樣設置手機屏幕旋轉
手機屏幕旋轉設置操作方法:
1、首先,我們打開我們的手機,然後我們點擊設置;
I. 安卓手機如何關閉自動旋轉屏幕功能怎麼打開
從手機上打開
設置,
從設置項列表進入
顯示,
在顯示設置項中,就可打開或關閉
自動旋轉了
想要更方便得進行切換的話,可從桌面屏幕往下劃,
如果在快捷鍵列表中有
自動旋轉按鈕,則可以通過點擊來實現切換,否則可進入
編輯,
將
自動旋轉拖動到上面對應位置,
確認
拖動替換替換,
這樣以後,想開關自動旋轉功能,就可以通過下劃桌面中的開關進行切換了.
J. 安卓手機怎麼鏡面翻轉
大部分圖片處理軟體就這樣的功能,比如美圖秀秀。
打開圖片,選擇編輯,選擇旋轉,選擇鏡面圖標就可以了。
不過在編輯結束,最好選擇另存為,而不是覆蓋保存,這樣原始圖片就會被編輯過的覆蓋,如果再用就比較麻煩。