`

PhoneGap禁止横屏

阅读更多
 
phonegap可以用配置文件,苹果和安卓通用,只有一句话
<preference name="orientation" value="portrait" />

 

在Android中要让一个程序的界面始终保持一个方向,不随手机方向转动而变化的办法: 只要在AndroidManifest.xml里面配置一下就可以了。

在AndroidManifest.xml的activity(需要禁止转向的activity)配置中加入 android:screenOrientation=”landscape”属性即可(landscape是横向,portrait是纵向)。例如:
Java 代码

1. <application android:persistent="true" 
2.       android:label="@string/home_title" 
3.       android:icon="@drawable/ic_launcher_home"> 
4.  
5.     <activity android:name="Home" 
6.             android:theme="@style/Theme" 
7.             android:launchMode="singleInstance" 
8.             android:stateNotNeeded="true" 
9.             android:screenOrientation="portrait"> 
10.         <intent-filter> 
11.             <action android:name="android.intent.action.MAIN" /> 
12.             <category android:name="android.intent.category.HOME"/> 
13.             <category android:name="android.intent.category.DEFAULT" /> 
14.         </intent-filter> 
15.     </activity> 

<application android:persistent="true"
android:label="@string/home_title"
android:icon="@drawable/ic_launcher_home">

<activity android:name="Home"
android:theme="@style/Theme"
android:launchMode="singleInstance"
android:stateNotNeeded="true"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.HOME"/>
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>


另外,android中每次屏幕方向切换时都会重启Activity,所以应该在Activity销毁前保存当前活动的状态,在Activity 再次Create的时候载入配置,那样,进行中的游戏就不会自动重启了!

要避免在转屏时重启activity,可以通过在androidmanifest.xml文件中重新定义方向(给每个activity加上 android:configChanges=”keyboardHidden|orientation”属性),并根据Activity的重写 onConfigurationChanged(Configuration newConfig)方法来控制,这样在转屏时就不会重启activity了,而是会去调用 onConfigurationChanged(Configuration newConfig)这个钩子方法。例如:

Java 代码

1. if(newConfig.orientation==Configuration.ORIENTATION_LANDSCAPE){ 
2.   //横向  
3.   setContentView(R.layout.file_list_landscape);  
4. }else{ 
5.   //竖向  
6.    setContentView(R.layout.file_list);  
7. } 

if(newConfig.orientation==Configuration.ORIENTATION_LANDSCAPE){
//横向
setContentView(R.layout.file_list_landscape);
}else{
//竖向
setContentView(R.layout.file_list);
}


在模拟器中,要使程序转屏可以使用快捷键F12或Ctrl+F11来切换。当然在用命令行启动模拟器时可以直接使用参数emulator.exe -skin HVGA-L来启动横屏的程序。 

分享到:
评论

相关推荐

    jqmobi+phonegap+手机触屏滑动效果js

    《jqmobi+phonegap+手机触屏滑动效果js:构建流畅的移动应用体验》 在移动开发领域,jqMobi和PhoneGap是两个重要的工具,它们为开发者提供了便捷的方式来构建跨平台的原生应用。结合触屏滑动效果,可以创造出与原生...

    phoneGAP2.9.1.zip

    PhoneGap的核心思想是将Web应用包装在原生的移动应用壳中,使得这些Web应用能够访问设备的功能,如摄像头、GPS、加速度计等,而无需编写原生代码。这个框架由Adobe公司维护,并且遵循Apache许可证。 在"phoneGAP...

    IONIC+PhoneGap项目源码

    1. "深入浅出 phonegap 代码.zip" - 这个文件可能是关于PhoneGap的教程或者示例代码,包含了深入讲解PhoneGap使用方法的代码示例,可以帮助初学者理解PhoneGap的工作原理和实践应用。 2. "ionic-1.1.zip" - 这是...

    phonegap完整例子!

    这个"phonegap完整例子!"是针对Android平台的一个示例项目,特别适合在pad设备上运行,并且包含了自定义插件的实现,这对于深入理解和使用PhoneGap技术尤其有帮助。 1. **PhoneGap基础概念** - PhoneGap基于Apache...

    phonegap源码+示例

    这个资源包含PhoneGap的源代码,版本为Cordova2.9,以及相关的示例程序,这为我们深入理解PhoneGap的工作原理和开发流程提供了宝贵的材料。 Cordova2.9是PhoneGap的一个重要版本,它在那时提供了对多种移动操作系统...

    phonegap屏幕亮度调整插件

    PhoneGap屏幕亮度调整插件是一款用于在Android和iOS平台上调整设备屏幕亮度的工具,它允许开发者通过JavaScript接口来控制设备的显示亮度,从而提供更好的用户体验。PhoneGap是一种跨平台的移动应用开发框架,它允许...

    PhoneGap实例

    PhoneGap实例是一个深入实践的项目,它展示了如何利用PhoneGap框架结合jQuery Mobile或jqMobi来构建跨平台的移动应用程序。PhoneGap是一个开源框架,它允许开发者使用HTML、CSS和JavaScript来开发原生的移动应用,...

    PhoneGap环境搭建demo

    PhoneGap环境搭建是开发跨平台移动应用的第一步,这里我们将详细讲解如何进行PhoneGap的配置和安装。 1. **系统需求**:首先,你需要一个支持PhoneGap开发的计算机系统,通常要求是Windows、Mac OS或Linux。确保...

    Phonegap拍照,图片保存应用

    PhoneGap的核心理念是通过Web技术来桥接移动设备的原生功能,如摄像头、地理位置、存储等,让Web开发者也能开发出具有原生体验的移动应用。 在"PhoneGap拍照,图片保存应用"这个主题中,我们将探讨如何利用PhoneGap...

    phonegap2.0版本android视频播放实例源码

    PhoneGap 2.0 版本是一个较早的版本,但仍然包含了许多基础功能,使得开发者能够利用Web技术进行混合应用开发。在本实例中,我们关注的是如何在Android平台上实现视频播放功能。 首先,PhoneGap提供了访问设备API的...

    PhoneGAP实例源码

    PhoneGap的核心理念是通过Web技术来桥接移动设备的原生功能,使得开发者无需深入学习各种平台的原生代码,就能创建功能丰富的应用。 在这个"PhoneGAP实例源码"压缩包中,包含了三个有趣的实例:汇率换算器、万圣节...

    phonegap 桌面版6.3.0

    PhoneGap的核心理念是通过WebView技术将Web应用程序与原生设备的功能相结合,使开发者无需掌握多种原生编程语言即可实现多平台的移动应用开发。 PhoneGap的主要特点包括: 1. **跨平台开发**:PhoneGap支持Android...

    PhoneGap-拍照上传DEMO

    3. **PhoneGap Camera Plugin**:PhoneGap的相机插件提供了一种更简单的方式来访问设备的摄像头。开发者可以通过调用`navigator.camera.getPicture`方法,选择拍照或从相册选取图片,并获取图片的Base64编码或文件...

    phoneGap手机安装apk

    PhoneGap的核心理念是通过Web技术来桥接移动设备的原生功能,如摄像头、GPS、加速度计等,为开发者提供了一个统一的API接口,使得Web应用能够访问这些硬件资源。下面,我们将深入探讨PhoneGap手机安装apk的过程以及...

    PhoneGap介绍与原理

    ### PhoneGap介绍与原理 #### 背景与挑战 随着移动互联网的快速发展,各种平台如雨后春笋般涌现,其中包括移动设备、桌面应用、Web应用及Flash应用等。这种多平台的趋势为企业和个人开发者带来了前所未有的机遇,...

    PhoneGap demo

    这个“PhoneGap demo”是一个展示如何利用PhoneGap技术来开发Android图书商城应用的实例。它展现了PhoneGap的强大功能,将网页技术与移动设备的特性相结合,创建出具有动态效果的应用程序。 首先,我们要理解...

    phonegap-1.0.0rc2.zip

    这个“phonegap-1.0.0rc2.zip”文件是PhoneGap的一个早期版本,版本号为1.0.0 Release Candidate 2,这表明它是一个在正式版本发布前的候选版本,可能包含了对早期版本的改进和修复。 PhoneGap的核心理念在于利用...

    PhoneGap Build的使用

    ### PhoneGap Build的使用 #### 一、简介与背景 PhoneGap是一款开源框架,它允许开发者使用HTML、CSS和JavaScript等Web技术来构建跨平台的移动应用。PhoneGap Build则是Adobe提供的一项云端服务,用于帮助开发者更...

Global site tag (gtag.js) - Google Analytics