startActivity
仅仅是跳转到目标页面,若是想跳回当前页面,则必须再使用一次startActivity
startActivityForResult
可以一次性完成这项任务,假若从T1Activity跳转到下一个T2Activity,而当这个T2Activity调用了finish方法以后,程序会自动跳转回T1Activity,并调用前一个T1Activity中的onActivityResult方法。
1、请求码的作用
使用startActivityForResult方法打开新的Activity时,我们需要传入一个请求码,请求码的值是根据业务需要由自己设定的,用于标识请求来源。
例如:一个Activity有两个按钮,点击这两个按钮都会打开同一个Activity,不管是哪个按钮打开新的Activity,当这个新的Activity关闭后,系统都会调用前面Activity的onActivityResult(int requestCode,int resultCode,Intent data)方法。
2、结果码的作用
在一个Activity中,可能会使用startActivityForResult方法打开多个不同的Activity处理不同的业务,结果码用于标识返回的数据来自于哪个新的Activity。