playbook横竖屏处理

对于黑莓横竖变化反差很大想必大家都深有体会,于是偶花了些时间,总结了两个解决的办法!

第一种直接禁止切换横竖屏

优点:省事

缺点:无横竖屏切换,只能有一种显示风格,横屏或竖屏.

办法:

在xml文件中配置相关的属性:

<rim:orientation mode="landscape" />这句话在xml中配置后只会出现横屏,一劳永逸。

https://developer.blackberry.com/html5/documentation/rim_orientation_element_1594186_11.html


第二种:根据竖屏设置相对的竖屏样式

优点:可以设置相应的屏幕样式,可多种风格显示应用

缺点:每个界面弄两个样式,横竖屏,所以麻烦。

办法:

通过实践监听”orientationchange“来监听页面变换,然后在监听之后通过方法改变body的class属性的值,从而改变横竖屏样式,说白了就是横屏一个样式,竖屏一个样式。

例子如下:js中:

window.addEventListener('load', setOrientation, false); //使用 load 事件的侦听器来初始化设置类名   
window.addEventListener('orientationchange', setOrientation, false);//对 orientationchange 事件使用另一个侦听器
//一个在 orientationchange 事件发生时,替换类名的函数
function setOrientation() {    
var orient = Math.abs(window.orientation) === 90 ? 'landscape' : 'portrait';    
var cl = document.body.className;    
cl = cl.replace(/portrait|landscape/, orient);    
document.body.className = cl;    
}  

css中:

.portrait body div { width: 10%; } 横向样式。

.landscape body div { width: 15%; }竖向样式。

html中:

<body class="portrait">

例子收集于:http://davidbcalhoun.com/2010/dealing-with-device-orientation

文件就这样布置了,js就这样监听,主要改变就在css中了。总结完毕收工。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值