Android 中各个组件主要是通过Intent来通讯。
Intent负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将 Intent传递给调用的组件,并完成组件的调用。
因此,Intent在这里起着一个媒体中介的作用,专门提供组件互相调用的相关信息,实现调用者与被调用者之间的解耦。
1.intent数据传递
intent中的数据传递,我们可以采用两中方式来实现,如果是简单的数据类型的数据可以直接采用Bundle来传递,而且bundle可以传递多个值,具体实现如下:
Bundle bundle =new Bundle();
bundle.putString("userName", "zhangsan");
bundle.putString("password", "123456");
intent.putExtras(bundle);
如果是传递集合或者对象那么需要采用intent中提供的putExtra方法,实现如下:
UserVO userVO =new UserVO(); //该对象需要实现Serializable接口
userVO.setUserName("wuhen");
userVO.setPassword("ling");
intent.putExtra("userVO", userVO);
2.关于intent的申明有显示申明和隐式申明,采用显示的申明非常的简单
Intent intent = new Intent(ActivityTestActivity.this, ActivityB.class);
startActivity(intent);
如果是隐式的申明稍微比较复杂点
Intent intent =new Intent();
intent.setClass(ActivityTestActivity.this, ActivityB.class);
或者设置setComponent
android提供了许多标注的action,例如打电话,发邮件,发短息等等。
Android Intent 详解
本文介绍了Android中组件间通信的核心机制——Intent。详细讲解了Intent如何用于数据传递,包括使用Bundle和putExtra方法来发送不同类型的参数。此外还讨论了Intent的显示与隐式声明的区别。
2067

被折叠的 条评论
为什么被折叠?



