Windows Phone 8 比较 windows phone 7 来说有很多功能及性能上的提升例如支持多核 CUP、支持SD卡、多种分辨率、 显然WP7 WVGA - 480x800 的已经不能完全满足所用户的需求,很多用户喜欢大屏幕高分辨的手机,随着大屏手机的逐渐推出 WP8 也是支持大分辨率的屏幕【WXGA - 768x1280 和 720P - 720x1280】

之前跟大家提起过关于应用设配WP8多种分辨率的事情,但是可能还是有些同学不是很明白如何判断当前手机的分辨率以及如何让应用自适应当前的手机分辨率 今天我给大家详细的介绍一下。

Windows phone 8 支持的屏幕分辨率有三种如下:

其中我们可以清楚的看到 WVGA 和 WXGA的屏幕横宽比例都是 15:9 的,只有在720P 的情况下是 16:9 的这点要提醒大家有些应用或许就要对720P的情况进行特殊处理下 例如一些图片或者视频类的应用。

另外相信很多同学想实现全屏或者更改系统时间电量图标颜色 请使用 SystemTray 进行设置:

void MainPage_Loaded(object sender, RoutedEventArgs e)
{
ProgressIndicator progress = new ProgressIndicator
{
IsVisible = true,
IsIndeterminate = true,
Text = "Downloading details..."
};
SystemTray.SetProgressIndicator(this, progress);
SystemTray.BackgroundColor = System.Windows.Media.Colors.Red;
SystemTray.ForegroundColor = System.Windows.Media.Colors.Blue;
//SystemTray.IsVisible = false;
}

通过上面的方法就可以隐藏状态条 或 根据应用的样式来调整 Tray的样式,个人感觉比较实用在这里给大家介绍一下。

当然今天的重点还是多分辨率的支持 以下是实现一个 ResolutionHeper class 判断当前屏幕分辨率的方法:

public enum Resolutions { WVGA, WXGA, HD720p };

public static class ResolutionHelper
{
private static bool IsWvga
{
get
{
return App.Current.Host.Content.ScaleFactor == 100;
}
} private static bool IsWxga
{
get
{
return App.Current.Host.Content.ScaleFactor == 160;
}
} private static bool Is720p
{
get
{
return App.Current.Host.Content.ScaleFactor == 150;
}
} public static Resolutions CurrentResolution
{
get
{
if (IsWvga) return Resolutions.WVGA;
else if (IsWxga) return Resolutions.WXGA;
else if (Is720p) return Resolutions.HD720p;
else throw new InvalidOperationException("Unknown resolution");
}
}
}

上面这段代码是使用 System.Windows.Interop 中的

public int ScaleFactor { get; }

The scale factor for the current application content area.

通过屏幕比例来判断屏幕分辨率。

另外在不同分辨率的手机上需要使用相应的SplashScreenImage.jpg文件来完美适应屏幕的大小,否则系统将会自动缩放。

Windows Phone 8 适应多屏分辨率的更多相关文章

  1. mirror op 如果在windows receiver上是黑屏

    mirror op 如果在windows receiver上是黑屏,手机上要重启下再打开mirror op.(手机是一加3 安卓7.0)

  2. windows 8.1 下蓝屏报错:SYSTEM_SERVICE_EXCEPTION(NETIO.SYS)的解决办法

         大概2周前,电脑突然蓝屏了,我上网查了一下解决办法,因为大部分内容是英文的,所以我只大概看了下,看到这个问题好像是由于软件冲突造成的,于是就把小红伞去掉了,而那天电脑也真的没有再蓝屏(之前大 ...

  3. OAF_解决OAF与Windows版本不兼容黑屏

    20150806 Created By BaoXinjian

  4. Windows 代码实现关机(直接黑屏)

    整理资料的时候发现的以前的代码,本机Win7 x64 Sp1 运行直接关机,黑屏.就是利用RtlAdjustPrivilege函数提权,代码中的注释写的很详细了.用的VS2010写的,直接编译成x64 ...

  5. windows phone 8 设置锁屏背景

    本来想研究一下 利用闪光灯实现手电筒的代码,发现不是简答设置FlashMode属性可以解决问题的,ms也没有提供api,无意瞄了一眼侧边栏的文章列表,发现了设置屏幕锁屏背景的实现,手一抖点进去了.还算 ...

  6. Windows卸载软件出现蓝屏SYSTEM SERVICE EXCEPTION(VrvProtect_x64_2.sys)

    今天给大家介绍一个卸载Windows上软件的工具Windows Installer Clean Up,可以卸载电脑上的很多控制面板里面卸载不掉的软件,或者卸载过程中出现问题的软件. (1)出现的现象: ...

  7. Windows Server2012,启动黑屏,只会弹出一个cmd命令窗口的解决办法

    Windows Server2012 服务器.在添加删除一个角色功能的时候,有可能会误删除Net Framework 4.5这个电脑基本功能组件. 就会影响到GUI界面的显示,所以服务器打开就只会黑屏 ...

  8. Windows用WinDbg分析蓝屏dump文件查找原因(转)

    WinDbg官方下载: http://msdl.microsoft.com/download/symbols/debuggers/dbg_x86_6.11.1.404.msi http://msdl. ...

  9. windows nvlddmkm、DRIVER_POWER_STATE_FAILURE 蓝屏问题的解决资料

    背景与现象描述 博主在最近购买了 机械革命 Z2-R (MECHREVO Z2-R Series GK5CP02) 笔记本电脑后,几乎每天均有不下3次的蓝屏,而且机器热时,更甚,达到每天10次以上,简 ...

随机推荐

  1. 【php】【趣味代码】对象引用的比较

    <?php $a = new stdClass(); $a->name = 'flint'; $b = $a ; $b->sex = 'man'; saveObject($b); f ...

  2. python中文件操作的基本方法

    在python中对一个文件进行操作,分为三大步:打开,操作,关闭 首先创建一个文件hello,里面内容为hello world 一.打开一个文件 1.#open(‘文件名或文件路径’,‘操作模式’,文 ...

  3. linux的vi和vim编辑器操作

    vi:linux内部的文本编辑器:vim:vi的增强版,具有程序编辑的能力. vi和vim的三种常见模式: (1)正常模式(一般模式):vim一打开就是这种模式,此模式下可以使用各种快捷键,比如复制粘 ...

  4. base64转图片

    y一个简单的工具类,附上: /** * @param imgStr 图片的base64 * @param path 将要生成的地址 * @return */ public static boolean ...

  5. python--命名规范及常见的数据类型

    1.python的命名规范 (1)不能以数字开头,不能出现中文. (2)命名以字母开头,包含数字,字母(区分大小写),下划线. (3)不能包含关键字,见名知意. 2.python常见的数据类型 (1) ...

  6. Linux中TTY是什么意思

    终端是一种字符型设备,它有多种类型,通常使用tty来简称各种类型的终端设备.tty是Teletype的缩写.Teletype是最早出现的一种终端 设备,很象电传打字机(或者说就是),是由Telety ...

  7. TensorFlow——小练习:feed

    feed就是喂入数据 使用feed前必须要有占位符作为操作的对象,在运行操作的时候喂入数据. # _*_coding:utf-8_*_ import tensorflow as tf import n ...

  8. 如何理解logistic函数?

    作者:煎挠橙链接:https://www.zhihu.com/question/36714044/answer/78680948来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明 ...

  9. ssh免密码登录远程服务器(不采用securecrt登录)

      http://blog.csdn.net/leexide/article/details/17252369       Linux/UNIX下使用ssh-keygen设置SSH无密码登录 标签:  ...

  10. [uiautomator篇][exist 存在,但click错误]

    uiautomator定位页面元素是,定位存在的;但是click的时候,发现点的位置不对,(不知道是android系统的问题还是uiautomator的问题,初步怀疑是系统的问题)