版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
技能點(diǎn):屏幕方向鎖定1、屏幕的方向概念如果APP不設(shè)置屏幕的方向,那么默認(rèn)的方向就會隨著系統(tǒng)的改變而改變,在此時(shí)回顧一下相關(guān)的Activity的生命周期:豎屏(portrait)轉(zhuǎn)橫屏(landscape)或者是橫屏轉(zhuǎn)豎屏,Activity生命周期都只走一次(并沒有橫屏轉(zhuǎn)豎屏走兩次的說法)。當(dāng)然也可以通過在AndroidManifest.xml中的Activity上設(shè)置android:configChanges的屬性來控制生命周期。1、屏幕的方向概念當(dāng)然也可以通過在AndroidManifest.xml中的Activity上設(shè)置android:configChanges的屬性來控制生命周期:“mcc“:移動國家號碼,由三位數(shù)字組成,每個國家都有自己獨(dú)立的MCC,可以識別手機(jī)用戶所屬國家?!癿nc“:移動網(wǎng)號,在一個國家或者地區(qū)中,用于區(qū)分手機(jī)用戶的服務(wù)商?!發(fā)ocale“:用戶所在地區(qū)發(fā)生變化?!皌ouchscreen“:觸摸的屏幕發(fā)生變化(這個應(yīng)該不容易發(fā)生)“keyboard“:鍵盤模式發(fā)生變化,例如:用戶接入外部鍵盤輸入?!発eyboardHidden“:用戶打開手機(jī)硬件鍵盤“navigation“:導(dǎo)航欄類型發(fā)生變化(應(yīng)該指硬件的導(dǎo)航按鈕功能發(fā)生變化)“orientation“:設(shè)備旋轉(zhuǎn),橫向顯示和豎向顯示模式切換。“fontScale“:全局字體大小縮放發(fā)生改變2、屏幕方向設(shè)定AndroidManifest.xml設(shè)定的幾種常用情況:1,android:configChanges="orientation",activity的生命周期無論值豎屏切橫屏還是橫屏切豎屏都是走一遍生命周期,不會調(diào)用onConfigurationChanged的方法;2,android:configChanges="screenSize",結(jié)果同上;3,android:configChanges="orientation|screenSize",Activity在切換橫豎屏?xí)r不走生命周期,只會在切換的時(shí)候調(diào)用onConfigurationChanged的方法。2、屏幕方向設(shè)定java代碼程序設(shè)定,要設(shè)置屏幕的方向,當(dāng)然先需要判斷屏幕的方向,下面提供兩種方法:1,
DisplayMetricsdm=newDisplayMetrics();
//顯示的度量getWindowManager().getDefaultDisplay().getMetrics(dm);
//必須調(diào)用,window才會賦值給dm(或者DisplayMetricsdm=getResources().getDisplayMetrics())intwidth=dm.widthPixels;intheight=dm.heightPixels;然后根據(jù)寬高的大小比,判斷是豎屏(portrait)還是橫屏(landscape)。
2、屏幕方向設(shè)定java代碼程序設(shè)定,要設(shè)置屏幕的方向,當(dāng)然先需要判斷屏幕的方向,下面提供兩種方法:2,if(getResources().getConfiguration().orientation==Configuration.ORIENTATION_PORTRAIT)是否為豎屏,或者也可以判斷是否為橫屏。2、屏幕方向設(shè)定已知了屏幕方向,那么就可以做出需求設(shè)置:1,在代碼中:setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
設(shè)置為橫屏setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
設(shè)置為豎屏
2,在項(xiàng)目的AndroidManifest.xml中的Activity上設(shè)置Android:screenOrientation的屬性:"unspecified":默認(rèn)值,不特別指定,由系統(tǒng)來判斷顯示方向;"landscape":橫屏顯示(寬比高要長),豎屏向左或右旋轉(zhuǎn)90度;userLanscape,只豎屏旋轉(zhuǎn)90度;"portrait":豎屏顯示(高比寬要長)
,userPortrait跟它效果一樣就是豎屏而已;"user":用戶當(dāng)前首選的方向;"behind":和該Activity下面的那個Activity的方向一致(在Activity堆棧中的)
;"sensor":有物理的感應(yīng)器來決定,一般設(shè)置的自動旋轉(zhuǎn)應(yīng)該就是根據(jù)物理的感應(yīng)器來相應(yīng)的;"nosensor":忽略物理感應(yīng)器,這樣就不會隨著用戶旋轉(zhuǎn)設(shè)備而更改了("unspecified"設(shè)置除外);2、屏幕方向設(shè)定java代碼程序設(shè)定,進(jìn)階:在上面方法基礎(chǔ)上,還可以優(yōu)化一下,就是抽取基類。搞一個BaseActivity繼承Activity,所有的activity再繼承這個BaseActivity,在BaseActivity里面setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);具體代碼如下:publicclassBaseActivityextendsActivity{@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 10-20以內(nèi)加減法練習(xí)題23篇(打印版)
- 廣東省東莞市黃岡理想學(xué)校七年級信息技術(shù)下冊 第2章 第1節(jié) 初識電子表格教案 粵教版
- 2018年痛風(fēng)護(hù)理查房
- 年九年級語文上冊 第二單元 7《就英法聯(lián)軍遠(yuǎn)征中國致巴特勒上尉的信》教案 新人教版五四制
- 文字編輯與校對作業(yè)指導(dǎo)書
- 【核心素養(yǎng)】人音版三年級上冊第1課《搖啊搖》教案
- 家電售后服務(wù)流程管理手冊
- 山東省青島市平度市蓼蘭鎮(zhèn)何家店中學(xué)七年級信息技術(shù)上冊 文件的操作教案2 新人教版
- 《昆蟲記》讀后感集錦15篇
- 廣東省肇慶市高中英語 Unit 5 Theme parks Explain the paper of the night exercises晚練教案 新人教版必修4
- 滬科版九年級物理上冊期中測試卷(帶有答案)
- 濟(jì)南市臨床整合醫(yī)療中心評審標(biāo)準(zhǔn)(創(chuàng)傷中心)
- 少先隊(duì)輔導(dǎo)員情景答辯題答案匯總
- 運(yùn)動會各種表格
- 低壓封閉母線安裝施工方案
- 妊娠合并外科疾病【婦科】-課件
- 走出幻覺-走向成熟
- 第一章-煤田地質(zhì)學(xué)-精簡課件
- 制藥工程設(shè)備管理52張課件
- 簡述機(jī)電一體化產(chǎn)品在日常生活中應(yīng)用
- 康復(fù)醫(yī)院脊髓損傷評估表
評論
0/150
提交評論