整個(gè)項(xiàng)目的橫豎屏設(shè)置
App.vue
<script>
export default {
onLaunch: function() {
console.log('App Launch')
// 鎖定橫屏
// plus.screen.lockOrientation("landscape-primary");
// 鎖定豎屏
plus.screen.lockOrientation("portrait-primary");
},
onShow: function() {
console.log('App Show')
},
onHide: function() {
console.log('App Hide')
}
}
</script>
<style>
/*每個(gè)頁(yè)面公共css */
</style>
單個(gè)頁(yè)面設(shè)置橫屏
index.vue
onLoad(option) {
setTimeout(function(){
plus.screen.lockOrientation('landscape-primary');
},10)
}
// 監(jiān)聽頁(yè)面返回
onBackPress(e) {
// plus.screen.unlockOrientation(); //解除屏幕方向的鎖定,但是不一定是豎屏;
uni.redirectTo({
url: 'login'
});
plus.screen.lockOrientation('portrait'); //鎖死屏幕方向?yàn)樨Q屏
return true;
},
注意:
1.定時(shí)器一定要寫,不然不生效。
2.必須解除橫屏或者設(shè)置豎屏。
問題:
一、plus is not defined
這個(gè)報(bào)錯(cuò)是說明要運(yùn)行在手機(jī)app上才能找到plus這個(gè)方法,因?yàn)閜lus是app才有的方法
二、界面混亂
由于橫屏后使用rpx會(huì)導(dǎo)致界面混亂。解決:
1.使用px,但是px不會(huì)適配。有可能在不同的手機(jī)上展示不同
2.在這個(gè)頁(yè)面單獨(dú)使用rem,把rem設(shè)置成1/750屏幕大小