Andorid 3.2以前的SDK可以使用如下配置
android:configChanges="orientation|keyboardHidden"
而Adnroid 3.2以后的SDK必须添加一个screenSize属性,具体如下
android:configChanges="keyboardHidden|orientation|screenSize"
或者
android:configChanges="orientation|screenSize"
对android:configChanges的总结
1、不设置Activity的android:configChanges时,切屏会重新调用各个生命念顷橘周期,切横屏时会执行一次,切竖屏时会执行两次(在三星4.0设备上切横屏和竖屏乎团都是执行一次,而并非这里说的有执行两次的情况);
2、设置Activity的android:configChanges="orientation"时,切屏还是会重新调用各个生命周期,切横、竖屏时只会执行一次;
3、设置Activity的android:configChanges="orientation|keyboardHidden"时,切屏不会重新调用各个生命周期,只会执行onConfigurationChanged方法。
注:上述描述是在Android3.2以前,如果缺少了keyboardHidden选项,不能防止Activity的仔团销毁重启,也就不能执行onConfigurationChanged方法了。在3.2之后,必须加上screenSize属性才可以屏蔽调用Activity的生命周期(一些设备上可以不需要keyboardHidden,只要screenSize就可以了,保守起见还是继续保留keyboardHidden吧)。
Android之Activity的几种跳笑埋转悄慧方式1.显示调用方法
Intent intent=new Intent(this,OtherActivity.class) //方法启升答1
Intent intent2=new Intent()
intent2.setClass(this, OtherActivity.class)//方法2
intent2.setClassName(this, "com.zy.MutiActivity.OtherActivity") //方法3 此方式可用于打开其它的应用
intent2.setComponent(new ComponentName(this, OtherActivity.class)) //方法4
startActivity(intent2)
然后调用finish():结束当前Activity
2.隐式调用方法(只要action、category、data和要跳转到的Activity在AndroidManifest.xml中设置的匹配就OK
3.跳转到另一个Activity后,当返回时能返回数据
在跳转的Activity端,调用startActivityForResult(intent2, 1),跳转到下一个Activity,其中第一个参数为传入的意图对象,第二个为设置的请求码;
跳转到第二个Activity后,调用setResult(100, intent)方法可返回上一个Activity,其中第一个参数为结果码,第二个为传入的意图对象;
在第一个Activity通过onActivityResult()方法获得返回的数据。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)