Activity页面之间数据传递

来源:互联网 发布:知乎爱德华诺顿的长相 编辑:程序博客网 时间:2024/06/16 19:42
1、概述:


Activity类直接或者间接地继承了Context、ContextWrapper、ContextThemeWrapper等基类,因此Activity可以直接调用它们的方法。


创建一个Activity需要实现某些方法,常见的是实现onCreate(Bundle status)方法,该方法将会在Activity创建时被回调,它调用setContentView(View view)方法来显示要展示的View。


一个Android应用常常有多个Activity,但是只有一个作为程序的入口,其他的Activity通常都由入口Activity、及其后者启动。






2、Activity启动另一个Activity的方法:


startActivity(Intent intent):启动其他Activity;


startActivityForResult(Intent intent, int requestCode):以指定请求码(requestCode)启动Activity,而且程序将会等到新启动Activity的结果(通过重写onActivityResult(...)方法来获取结果)。






3、关闭Activity的方法:


 finish():结束掉当前的Activity;


 finishActivity(int requestCode):结束以startActivityForResult()方法启动的Activity。






4、使用Bundle在Activity之间交换数据:


  1)、Intent:主要通过Intent这个信使,将需要交换的数据放入即可。Intent提供了方法用于携带数据,如:


            putExtras(Bundle data):向Intent中放入需要携带的数据;


  2)、Bundle:就是一个简单的数据包,该Bundle对象包含了多个方法来存入、取出数据,有:


            putXxx(String key, Xxx data):向Bundle放入Int、Long等各种类型的数据;


            putSerializable(String key, Serializable data):向Bundle放入一个可序列化的对象;


            getXxx(String key):从Bundle取出Int、Long等各种类型的数据;


            getSerializable(String key):从Bundle取出一个可序列化的对象。
原创粉丝点击