Android开发之请求码和结果码
【应用场景】
请求码和结果码的应用场景就是一个页面中有好多按钮,每个按钮可能会激活相同或不同的activity
【请求码】
当用户点击一个按钮需要激活一个activity页面,并需要返回一些信息到原页面时,会使用startActivityForResult(Intent intent,requestCode requestCode)方法,其中这个方法中的第二个参数就是请求码,用户可以在不同的按钮点击事件中设置不同的数值。请求码的应用场景是:一个activity可能被不同的按钮打开,请求码就是用来判断哪个按钮打开了新的activity。
【结果码】
当关闭使用startActivityForResult方法打开的activity,系统会调用前一个activity中的onActivityResult(int requestCode, int resultCode, Intent data)方法。为了知道返回的数据来自于哪个新Activity,需要一个结果码,这个结果码就是来区分activity的
在新的activity中使用setResult(ResultCode resultCode,Intent data);
这个方法的作用就是设置返回码,标记本activity,第二个参数Intent是用于传递数据的
一般还会和finish()方法搭配使用,finish()方法的作用是关闭本activity并把需要传递的数据传回上一个activity
然后在上一个activity中调用
用一句话总结:请求码是用来区分打开activity的是哪一个按钮,结果码是用来区分当前传回的数据来自于哪一个activity。