(一)Activity与Intent传值总结

来源:互联网 发布:配色软件中文 编辑:程序博客网 时间:2024/04/30 08:51

Activity与Intent传值总结,也是常见的面试题。

1、什么是Activity?

      Activity android 提供应用程序交互界面的一个重要组件,也是android最重要的组件之一。准确来说,Activity是业务类,它承载着应用程序界面以及业务行为的基础。但是界面本身不是 Activity , Activity本身也不是界面,业务本身里面包含了界面呈现,所以我们要表现出这样的界面就得靠Activity

 

2、两个Activity之间是怎样利用Intent传递数据的?

      在Activity的值传递和接收的过程中,首先通过startActivityForResult( )intent传过,intent带着我们的一些附加值,传的时候要注意传一个requestCode,也许我们在getIntent的时候去识别它,用到它。然后在我们新的接收值的Activity的时候我们getIntent得到传过来的Intent,并且进行业务逻辑操作。业务逻辑操作结束之后我们要进行一个返回,那么就把新的值设置到Intent里面,并且通过setResult( )把我们的值传递回去,在setResult里面要用到resultCode。这个是后面接受参数的时候需要用到的。

 

3、startActivity( )的机制?

      startActivity( )调用的就是startActivityForResult( ),只不过呢它在startActivityForResult( )传了一个-1requestCode,而且有时它也不需要返回值。

startActivityForResult( )执行了Instrumentation里面的一个execstartActivity( )方法。

 

4、Activity的生命周期?

      生命周期描述的是一个类 从创建(new出来)到死亡(垃圾回收)的过程中会执行的方法..在这个过程中 会针对不同的生命阶段会调用不同的方法。Activity从创建到销毁有多种状态,从一种状态到另一种状态时会激发相应的回调方法,这些回调方法包括:oncreate( ) ondestroy( ) onstop( ) onstart( ) onresume( ) onpause( ) ,其实这些方法都是两两对应的,onCreate( )创建与onDestroy( )销毁;onStart( )可见与onStop( )不可见;onResume可编辑(即焦点)与onPause; 这6个方法是相对应的,那么就只剩下一个onRestart方法了,这个方法在什么时候调用呢?答案就是:在Activity被onStop后,但是没有被onDestroy,在再次启动此Activity时就调用onRestart(而不再调用onCreate)方法;如果被onDestroy了,则是调用onCreate方法。

         注意,对话框的弹出, Activity.this 对话框是activity的一部分,不调用Activity的生命周期的方法.

 

 

0 0
原创粉丝点击