在使用PhoneGap来开发windows phone7中,如果我们想用一副图片作为界面的背景,我们可以通过如下的方式来设置图片为背景:
.ui-page {
background: transparent url('mybg.png') no-repeat;
background-position:center;
};
通过更改ui-page类中的background属性来提供图片即可。但是这还不能解决所有问题, 我们还必须注意下列两个问题,否则的话,图片是不能正确显示的 (血泪经验啊,花了一上午,翻遍互联网才搞定)。
1. 必须将该图片添加到工程中,否则该文件将不会被打包到release的安装包里,这样也就不会显示。
2. 在图片的属性中,将生成操作从resource改为content(内容),一般情况下,在工程中插入图片后,其缺省的值为resource,必须将其改为content, 才能正确显示。
原因是很明显的,这是因为,PhoneGap实际上就是建了一个windows Phone7的一个工程,该工程只有一个webview控件,然后所有的其他的都是html等文件,显然上述的图像不是用于工程的一个resource,而是www下的一个content,所以一定要改成content。
下面为全部代码,演示了将一个图片显示为背景,另一付图片显示在前景,并且都是居中显示。
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, height=device-height,
initial-scale=1.0, maximum-scale=1.0, user-scalable=no;" />
<meta http-equiv="Content-type" content="text/html; charset=utf-8"/>
<title>PhoneGap WP7</title>
<link rel="stylesheet" href="master.css" type="text/css" media="screen" title="no title" charset="utf-8"/>
<link rel="stylesheet" href="jquery.mobile-1.0.1.min.css" />
<style type="text/css" >
.ui-page {
background: transparent url('mybg.png') no-repeat;
background-position:center;
};
</style>
<script src="jquery-1.6.4.min.js"></script>
<script src="jquery.mobile-1.0.1.min.js"></script>
<script type="text/javascript" charset="utf-8" src="phonegap-1.4.0.js"></script>
<script type="text/javascript">
document.addEventListener("deviceready",onDeviceReady,false);
// once the device ready event fires, you can safely do your thing! -jm
function onDeviceReady()
{
}
</script>
</head>
<body>
<div data-role ="page" id="one" align ="center">
<img src ="images-2.jpg" alt="demo"/>
<p>hello test</p>
</div>
</body>
</html>