前言
Intent可以用来启动Activity(startActivity(Intent))、Serveice(startService(Intent))等组件,可以用来绑定Activity和Service以建立它们之间的通信(bindServiceConnaction(Intent,ServiceConnection,int)),可以作为Broadcast Intent发送给广播接收器(sendBroadcast(Intent))。
介绍
主要讲解Intent如何传值和传递对象?
Intent可以传递什么类型数据?
Intent传递基本数据和基本数据数组
Intent传递Parcelable对象
Intent传递Serializable对象
Intent传递String,Integer,CharSequence泛型集合
Intent传递基本自定义对象集合Intent通过什么传递数据
通过Bundle存储数据
使用
在界面跳转的时候,如果我们使用Inten传递数据,下面我们就以下这几方便做介绍:
(1)一个Activity数据传递到另一个Activity
主Activity:
//通过setFlags(int flags)方法
Intent intent=new Intent(MainActivity.this,SecondActivity.class);
intent.setFlags(1000);
startActivity(intent);
第二个 Activity:
//获得setFlag传递的整形数据
int flags=getIntent().getFlags();
//转化为字符串
String sFlags=String.valueOf(flags);
textView.setText(sFlags);
PS:此方法只能传递整形的数据(一般不用于传递数据),常用方式: intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);//用于添加额外的控制旗标
(2)通过Intent.putExtra(String name, String value)方法
主Activity:
Intent intent=new Intent(MainActivity