Intent被用来连接各个Activity,也被用来在Activity之间传递数据。跳转的方法有startActivity()和startActivityForResult()。
从一个Activity跳转到另一个Activity传递数据分两步:
在起始Activity中存入待传递数据:Intent.putExtra(String K,String V)在目标Activity中取出数据:Intent.getExtra()得到一个Bundle对象,该对象包含Intent携带的数据。再使用Bundle.getString(String key),通过key参数,得到key对应的值。(Bundle是一个HashMap再封装)
完成从一个页面跳转到另一个页面完成相关工作,如注册等,在注册页面完成输入等相关信息后再返回起始界面,并显示用户在注册页面输入的相关信息。其主要步骤为:
新建Intent,并使用startActivityForResult()方法调用。重写onActivityResult(),在该方法中处理返回结果。在目标Activity中,新建空指向的Activity,并绑定数据。使用setResult()方法,将Intent传递到结果中。调用finish()结束目标Activity。同时系统会调用重写的onActivityResult()。 onActivityResult代码如下: protected void onActivityResult(int requestCode,int resultCode,Intent data){ super.onActivityResult(requestCode, resultCode, data); }第一个参数是请求码,标示本次结果对应哪个请求。第二个参数是结果码,其中RESULT_OK,代表结果返回成功。RESULT_CANCELED本次操作取消返回的值。
新闻热点
疑难解答