js监听屏幕方向如何第一次默认不监听

来源:http://www.chinese-glasses.com 作者:Web前端 人气:183 发布时间:2020-04-22
摘要:时间: 2019-09-24阅读: 128标签: 屏幕 今天介绍,本教程的第二章。 大家有时候有需求在屏幕方向改变的时候重新执行某个渲染函数,以获取方向改变后的实际宽高,但是首次加载的执行函

时间: 2019-09-24阅读: 128标签: 屏幕

今天介绍,本教程的第二章。

大家有时候有需求在屏幕方向改变的时候重新执行某个渲染函数,以获取方向改变后的实际宽高,但是首次加载的执行函数要在其他地方执行,这时候可以加一个flag的状态值,默认为false,当第一次检测到方向改变的时候再改为true。

第二章 手机方向

this.supportOrientation = typeof window.orientation === ‘number‘; // 检查屏幕方向 checkScreenOrientation() { if (this.supportOrientation) { if (window.orientation === 0) { this.screenOrientation = ‘portrait‘; } if (window.orientation === 90 || window.orientation === -90) { this.screenOrientation = ‘landscape‘; } } else { this.screenOrientation = (window.innerWidth  window.innerHeight) ? ‘landscape‘ : ‘portrait‘; } // if (this.orientationFlag) { // 在为true的时候交换屏幕长宽 let temp = this.bodyWidth; // this.bodyWidth = this.bodyHeight; // this.bodyHeight = temp; // } else { // this.orientationFlag = true; // }i f(this.orientationFlag){ imageMof();//重新设置图片高度 }else { this.orientationFlag = true; }}

一,Silverlight和自动布局

在xaml中可以通过,SupportedOrientations来设置程序中支持的手机方向。

在切换手机方向后,Silverlight会自动根据xaml中的设置重新布局,所以在设计时要考虑屏幕方向改变后程序的切换效果。

书中利用TextBlock中的VerticalAlignment和HorizontalAlignment进行了布局演示。


Tips:

  1. VerticalAlignment可设置为Top,Center,Bottom。

    HorizontalAlignment可设置为Left,Center,Right。

2. Margin属性的类型是Thickness。在xaml中Thickness可以有一个参数(四个方向全都是这个数值),两个参数(左右方向为第一个参数,上下方向为第二个参数),四个参数(不用说了,代表左上右下)

3. 可以在控件添加SizeChanged属性事件,于cs文件中实现该控件大小改变时需要做的工作。

4. 在xaml中以命名的标签可以,在cs中调用。命名方式有两种x:Name和Name,书中解释属性x:Name是xmal文件标签的命名方式,而属性Name是继承FrameworkElement的,因此不是所有标签都可以用Name命名。(后面会看见各种TransForm都不是继承FrameworkElement的,因此只能用x:Name命名)

5. 可以在xaml中修改属性shell:SystemTray.IsVisible来显示或隐藏任务栏。如果用户不需要知道事件,而你需要32个像素的空间时,大可以隐去任务栏。


 

二,方向改变事件

Silverlight中,可以在cs文件中重载PhoneApplicationPage的OnOrientationChanged函数来截获屏幕方向发生变化的事件。(当然是在SupportedOrientations允许屏幕方向改变的前提下)参数中的Orientation属性是新的屏幕方向。

10bet, 

三,XNA中的方向设置

XNA中默认的是Landscape方向,不过在Game1()构造函数构造了graphics之后,可以通过设置他的SupportedOrientations属性来声明允许的屏幕方向。


Tips:

本文由10bet发布于Web前端,转载请注明出处:js监听屏幕方向如何第一次默认不监听

关键词:

最火资讯