在Activity的oncreate方法中如果跳转到别的activity,会发生什么
来源:互联网 发布:淘宝红号查询 编辑:程序博客网 时间:2024/04/26 01:31
真是日*狗,即便你跳转到别的Activity,其余的代码一样执行
首先做实验,证明它就是这样发生的
protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main); init();System.out.println("aaaaaaaaaaaaaaaaaa");new Thread(new Runnable() {@Override public void run() {// TODO Auto-generated method stubhandler.sendEmptyMessage(1);System.out.println("bbbbbbbbbbbbbbbbbbb");} }).start();System.out.println("ccccccccccccccccc"+i);} private void init() { Intent intent=new Intent(this,TwoActivity.class); startActivity(intent); }可能你会觉得aaaaaaaaaa不会被打印出来,我刚开始也是这么觉得
但是aaa bbb cccc 都输出 出来啦 ,而且还跳转啦,那么问题来啦 怎么会这样
我真的觉得特别好奇,难道是我手机的问题,结果显然不是
一般情况下,跳转到其他Activity都会执行onpause()方法,
对问题就在这!!!!!!!!!!
然后我在onpuase 中这么写
@Overrideprotected void onPause() {// TODO Auto-generated method stubSystem.out.println("pause--pause---pause");super.onPause();}
结果在 a b c 之后打印出onpause ,为什么呢????
经过一番思考,得出结论
由于在跳转时,这个activity的oncreate方法 并没有执行完毕,所以不会执行onpause ,知道oncreate方法 执行完毕才会执行onpause ,
那么另一个问题来啦???到底init()方法执行时,有没有跳转,于是我在另一个activity 的oncreate方法 中这样写
protected void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onCreate(savedInstanceState);setContentView(R.layout.main);System.out.println("two two two ");}看看打印结果 应该就有结论
08-09 16:46:37.926: I/System.out(20472): pause--pause---pause
08-09 16:46:38.005: I/System.out(20472): two two two
小伙伴们 看到啦 吗
只有activity 的oncreate的方法 执行完毕 才会跳转
如果在 oncreate方法中加上
for (int i = 0; i < Integer.MAX_VALUE; i++) {System.out.println("ddddddddddddddddd"+i);}结果就是 一直循环 只有执行完毕这个循环 才会 执行onpause 然后才会跳转
切记啊!!!!!!!!!!!!! ocreate 方法中 尽量不要写 startActivity()
如果有这个 别的初始化方法就不用执行啦 尽快结束 oncreate 方法
1 0
- 在Activity的oncreate方法中如果跳转到别的activity,会发生什么
- Activity 中 的 onCreate
- Android munu中跳转别的activity
- 不要在ACtivity中oncreate()方法中使用
- 在Activity的onCreate方法中获取控件宽高的N种方法
- Activity的生命周期,activity跳转到activity
- 在Activity的onCreate方法中显示PopupWindow导致异常的原因分析及解决方案
- 在Activity的onCreate方法中显示PopupWindow导致异常的原因分析及解决方案
- 在Activity的onCreate方法中获取View的width和height
- 在Activity的onCreate方法中显示PopupWindow导致异常的原因分析及解决方案
- android 在Activity的OnCreate()方法中如何获取view的宽和高
- 在Activity的onCreate方法中显示PopupWindow导致异常的原因分析及解决方案
- 在Activity中onCreate方法里面获取空间宽度和高度的新姿势
- 在Activity中的OnCreate方法中获取控件的宽高
- Android:Activity中onCreate方法的参数及用途
- Android:Activity中onCreate方法的参数及用途
- Android:Activity中onCreate方法的参数及用途
- Android:Activity中onCreate方法的参数及用途
- HDU 5365-Run(几何)
- 珠排序
- 模版方法
- ALV OO:单击事件-双击事件-自定义按钮事件(示例)
- HDU2.2.1 Fibonacci
- 在Activity的oncreate方法中如果跳转到别的activity,会发生什么
- 在Word中选择多个自选图形对象
- NYOJ--40--公约数和公倍数
- JAVA的整型与字符串相互转换
- 浅析Java中的反射机制原理
- hdu 1829
- UVa11038 How Many O's? (计数)
- 同步与异步的初步理解
- 让windows8 变成无线路由器的方法