您好,登錄后才能下訂單哦!
1.只支持一種模式,
在AndroidManifest.xml中加入 android:screenOrientation=”portrait”(豎屏) android:screenOrientation=”landscape”(橫屏)
2.只支持二種模式:
第一步:新建2種布局(橫豎)文件
layout-land 橫屏 layout-port 豎屏
第二步:在 AndroidManifest.xml文件中的主Activity中加入
android:configChanges=”orientation|keyboardHidden|screenSize”
擴(kuò)展理論
1.不設(shè)置Activity的android:configChanges時(shí),切屏?xí)匦抡{(diào)用各個(gè)生命周期,切橫屏?xí)r會(huì)執(zhí)行一次,切豎屏?xí)r會(huì)執(zhí)行兩次(在部分機(jī)器上是一次)
2.設(shè)置Activity的android:configChanges=”orientation”時(shí),切屏還是會(huì)重新調(diào)用各個(gè)生命周期,切橫、豎屏?xí)r只會(huì)執(zhí)行一次;
3.設(shè)置Activity的android:configChanges=”orientation|keyboardHidden|screenSize”時(shí),切屏不會(huì)重新調(diào)用各個(gè)生命周期,只會(huì)執(zhí)行onConfigurationChanged方法。
注:3.2系統(tǒng)之后,須加上screenSize屬性才可以屏蔽調(diào)用Activity的生命周期(一些設(shè)備上可不需要keyboardHidden,只要screenSize就可以了,但是保險(xiǎn)起見(jiàn)還是繼續(xù)保留keyboardHidden)。
第三步:在Activity寫(xiě)相應(yīng)業(yè)務(wù)代碼,例下:
@Override public void onConfigurationChanged(Configuration config)
{ super.onConfigurationChanged(config); if (config.orientation == Configuration.ORIENTATION_PORTRAIT){//豎向 setContentView(R.layout.main); tv = (TextView) findViewById(R.id.EditText01); }
if (config.orientation == Configuration.ORIENTATION_LANDSCAPE){//橫向 setContentView(R.layout.main); tv = (TextView) findViewById(R.id.EditText01); } }
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。