口袋妖怪钻石切换不了横竖屏切换

口袋妖怪黑2怎么调成横屏?我用的是激烈nds。_百度知道
口袋妖怪黑2怎么调成横屏?我用的是激烈nds。
提问者采纳
重力感应的。。。
提问者评价
太给力了,你的回答完美解决了我的问题!
其他类似问题
按默认排序
其他2条回答
激烈调不了
另外一个老版的可以
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁后使用快捷导航没有帐号?
只需一步,快速开始
查看: 1449|回复: 3
在线时间1597 小时经验值7482 最后登录注册时间帖子阅读权限153UID1443140
该用户从未签到
G币718 最后登录注册时间
马上注册,结交更多机友,下载更多应用,让你轻松玩转手机。
已有帐号?   下载游戏和软件,请【】进入机锋市场!
本帖最后由 lbw114007 于
11:45 编辑
如何让Android横竖屏切换时不销毁当前activity
背景介绍:
在编写android小应用的时候,碰到了这样的一个问题:当推开手机的实体键盘时,屏幕由竖屏转换为横屏,此时应用程序的显示界面(Activity)就会被销毁了,这个让人比较郁闷。
如何才能让这个activity不被销毁呢?
———————————— 分割线 ———————————————-
解决办法:
通过上面资料的阅读,解决办法就很简单了。
首先在Mainifest.xml的Activity元素中加入android:configChanges=”orientation|keyboardHidden”属性
别忘了在java文件中加上import android.content.res.Configuration。这样就OK了,屏幕方向改变时,应用程序的显示界面也会随着改动,而不是被销毁!
& && && && && && && && &———————————–分割线———————————————
扩展补充:Activity中还有一属性和屏幕方向有关:
& && &android:screenOrientation=[&unspecified& | &user& | &behind& |
& && && && && && && && && && && &&landscape& | &portrait& |
& && && && && && && && && && && &&sensor& | &nosensor&]
&/activity&
比如,在Mainifest.xml的Activity元素中增加这么一个属性:android:screenOrientation=”portrait”则无论手机如何变动,拥有这个属性的activity都将是竖屏显示。android:screenOrientation=”landscape”,为横屏显示。这里提一个小知识,Anroid模拟器中,快捷键”ctrl+F11″可以实现转屏。
转自wanglin
&activity android:name=&.FileBrowser&
& && && && && && &android:label=&@string/app_name&
& && && && && && &android:configChanges=&orientation|keyboardHidden&&
& && && && &&intent-filter&
& && && && && & &action android:name=&android.intent.action.MAIN& /&
& && && && && & &category android:name=&android.intent.category.LAUNCHER& /&
& && && && &&/intent-filter&
&/activity&复制代码
* onConfigurationChanged
* the package:android.content.res.Configuration.
* @param newConfig, The new device configuration.
* 当设备配置信息有改动(比如屏幕方向的改变,实体键盘的推开或合上等)时,
* 并且如果此时有activity正在运行,系统会调用这个函数。
* 注意:onConfigurationChanged只会监测应用程序在AnroidMainifest.xml中通过
* android:configChanges=&xxxx&指定的配置类型的改动;
* 而对于其他配置的更改,则系统会onDestroy()当前Activity,然后重启一个新的Activity实例。
@Override
public void onConfigurationChanged(Configuration newConfig) {& && &&&
& && &&&super.onConfigurationChanged(newConfig);
& && &&&// 检测屏幕的方向:纵向或横向
& && &&&if (this.getResources().getConfiguration().orientation
& && && && && && && && &== Configuration.ORIENTATION_LANDSCAPE) {
& && && && && & //当前为横屏, 在此处添加额外的处理代码
& && &&&}
& && &&&else if (this.getResources().getConfiguration().orientation
& && && && && && && && &== Configuration.ORIENTATION_PORTRAIT) {
& && && && && & //当前为竖屏, 在此处添加额外的处理代码
& && &&&}
& && &&&//检测实体键盘的状态:推出或者合上& &
& && &&&if (newConfig.hardKeyboardHidden
& && && && && && && && &== Configuration.HARDKEYBOARDHIDDEN_NO){
& && && && && & //实体键盘处于推出状态,在此处添加额外的处理代码
& && &&&}
& && &&&else if (newConfig.hardKeyboardHidden
& && && && && && && && &== Configuration.HARDKEYBOARDHIDDEN_YES){
& && && && && & //实体键盘处于合上状态,在此处添加额外的处理代码
}
复制代码
在线时间218 小时经验值482 最后登录注册时间帖子阅读权限60UID5328355
大学本科, 积分 482, 距离下一级还需 218 积分
该用户从未签到
G币1006 最后登录注册时间
好文 要 mark
不爱搞基 爱百合
在线时间418 小时经验值1320 最后登录注册时间帖子阅读权限80UID4912370
研究生, 积分 1320, 距离下一级还需 380 积分
该用户从未签到
G币2028 最后登录注册时间
对不起,您的帖子小于 10 个字符的限制,请返回修改
师太你是我心中的魔、我离你越近就离佛越远
在线时间418 小时经验值1320 最后登录注册时间帖子阅读权限80UID4912370
研究生, 积分 1320, 距离下一级还需 380 积分
该用户从未签到
G币2028 最后登录注册时间
对不起,您的帖子小于 10 个字符的限制,请返回修改
师太你是我心中的魔、我离你越近就离佛越远
在线时间0 小时经验值2 最后登录注册时间帖子阅读权限10UID7496681
幼儿园, 积分 2, 距离下一级还需 13 积分
该用户从未签到
G币1 最后登录注册时间
看了,也用了,但是就是没效果···
Powered by页面导航:
→ 正文内容 android横竖屏切换
android实现在横竖屏切换时页面信息不被重置的示例分享
这篇文章主要介绍了android实现在横竖屏切换时页面信息不被重置的示例,需要的朋友可以参考下
当屏幕转动切换的时候 Android 机制是:销毁当前屏幕的 Activity ,然后重新开启一个新的适应屏幕改变的 Activity 。那么,我们该如何在屏幕切换的时候页面信息不被重置呢?
解决实现:1.在 AnroidMainifest.xml 的 activity 元素中加入: 代码如下:android:configChanges="orientation|keyboardHidden"或 代码如下:android:configChanges="orientation|keyboard|keyboardHidden"
表示在改变屏幕方向、弹出软件盘和隐藏软键盘时,不再去执行 onCreate() 方法,而是直接执行 onConfigurationChanged() 。如果不申明此段代码,按照Activity的生命周期,都会去执行一次 onCreate() 方法,而 onCreate() 方法通常会在显示之前做一些初始化工作。
所以如果改变屏幕方向这样的操作都去执行 onCreate() 方法,就有可能造成重复的初始化,降低程序效率是必然的了,而且更有可能因为重复的初始化而导致数据的丢失。这是需要避免的!
2.权限声明: 代码如下:&uses-permission android:name="android.permission.CHANGE_CONFIGURATION"&&/uses-permission&
API 中说该权限允许我们改变配置信息,但是我们在改变屏幕方向的程序中却并没有用到该权限,是不是相互冲突了呢?这里我们可以这样认为,当我们声明该权限的的时候,系统允许我们通过重写 activity 中的 onConfigurationChanged 方法来捕获和修改某些配置信息。
3.在 Java 源代码文件中重写 Activity 中的 onConfigurationChanged 方法: 代码如下:import android.content.res.C
// 框架回调函数 onConfigurationChanged 出自 android.content.res.Configuration 包。// 参数 newConfig - 新设备的配备。// 当设备配置信息有改动(比如屏幕方向的改变,实体键盘的推开或合上等)时,// 并且如果此时有 Activity 正在运行,系统会调用这个函数。// 注意:onConfigurationChanged 只会响应应用程序在 AnroidMainifest.xml 中//    通过 android:configChanges="配置类型" 指定的配置类型的改动;//    而对于其他配置的更改,则系统会先销毁当前屏幕的 Activity ,//    然后重新开启一个新的适应屏幕改变的 Activity 实例。public voidonConfigurationChanged( Configuration newConfig ){&&& // 一定要先调用父类的同名函数,让框架默认函数先处理&&& // 下面这句一定不能省去,否则将引发:android.app.SuperNotCalledException 异常。&&& super.onConfigurationChanged( newConfig );&&& // 检测屏幕的方向:纵向或横向&&& if ( this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE )&&& {&&&&&&& // 当前为横屏, 在此处添加额外的处理代码&&& }&&& else if ( this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT )&&& {&&&&&&& //当前为竖屏, 在此处添加额外的处理代码&&& }&&& //检测实体键盘的状态:推出或者合上&&& &&& if ( newConfig.hardKeyboardHidden == Configuration.HARDKEYBOARDHIDDEN_NO )&&& {&&&&&&& // 实体键盘处于推出状态,在此处添加额外的处理代码&&& }&&& else if ( newConfig.hardKeyboardHidden == Configuration.HARDKEYBOARDHIDDEN_YES )&&& {&&&&&&& // 实体键盘处于合上状态,在此处添加额外的处理代码&&& }}
一、新建一个 Activity ,并把各个生命周期打印出来:第一步:运行 Activity ,得到如下信息: 代码如下:onCreateonStartonResume
第二步:按 crtl + f12 切换成横屏时: 代码如下:onSaveInstanceStateonPauseonStoponDestroyonCreateonStartonRestoreInstanceStateonResume
第三步:再按 crtl + f12 切换成竖屏时,发现打印了两次相同的信息: 代码如下:onSaveInstanceStateonPauseonStoponDestroyonCreateonStartonRestoreInstanceStateonResumeonSaveInstanceStateonPauseonStoponDestroyonCreateonStartonRestoreInstanceStateonResume
第四步:修改 AndroidManifest.xml 文件中的 Activity 元素,添加 android:configChanges="orientation" ,按 crtl + f12 切换成横屏时:(与上面无修改时相同) 代码如下:onSaveInstanceStateonPauseonStoponDestroyonCreateonStartonRestoreInstanceStateonResume
第五步:再按 crtl + f12 切换成竖屏时,发现不会再打印相同信息,但多打印了一行 onConfigChanged : 代码如下:onSaveInstanceStateonPauseonStoponDestroyonCreateonStartonRestoreInstanceStateonResumeonConfigurationChanged
第六步:修改 AndroidManifest.xml 文件中的 Activity 元素,把 代码如下:android:configChanges="orientation"改成 代码如下:android:configChanges="orientation|keyboardHidden"
按 crtl + f12 切换成横屏时,就只打印 onConfigChanged : 代码如下:onConfigurationChanged
第七步:按 crtl + f12 切换成竖屏时: 代码如下:onConfigurationChangedonConfigurationChanged
二、总结:1.不设置 AndroidManifest.xml 文件中的 Activity 元素的 android:configChanges 时,切屏会重新调用各个生命周期,切横屏时会执行一次,切竖屏时会执行两次;
2.设置了 AndroidManifest.xml 文件中的 Activity 元素的android:configChanges="orientation"时,切屏还是会重新调用各个生命周期,切横、竖屏时只会执行一次;
3.设置了 AndroidManifest.xml 文件中的 Activity 元素的android:configChanges="orientation|keyboardHidden"时,切屏不会重新调用各个生命周期,只会执行 onConfigurationChanged 方法!
三、补充一点:1.当前 Activity 产生事件弹出 Toast 和 AlertDialog 的时候 Activity 的生命周期不会有改变!
2.Activity 运行时按下 home 键(跟被完全覆盖是一样的): 代码如下:onSaveInstanceState --& onPause --& onStop onRestart --& onStart --& onResume
3.Activity 未被完全覆盖只是失去焦点: 代码如下:onPause --& onResume
您可能感兴趣的文章:
上一篇:下一篇:
最 近 更 新
热 点 排 行如何让Android横竖屏切换时不销毁当前activity_百度知道
如何让Android横竖屏切换时不销毁当前activity
提问者采纳
category:name=&如:&lt在清单文件中加入
&lt.true&singleTask&&
&/mcc|mnc|orientation|screenSize|keyboardHidden&category android.action:configChanges=&quot.FMRadioActivity&intent-filter&mcc|mnc|orientation|screenSize|keyboardHidden&quot:label=& /app_name&quot:name=&/ & &#47:launchMode=&;
&lt.intent.LAUNCHER&quot.MAIN&intent-filter&gt:name=&
android:configChanges=&
&activity@string/activity&&
android:clearTaskOnLaunch=&quot
其他类似问题
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁

我要回帖

更多关于 口袋妖怪钻石 的文章

 

随机推荐