Intent

来源:互联网 发布:网络视频直播技术 编辑:程序博客网 时间:2024/06/06 10:04

什么是Intent?

一个Intent就是一个对象提供运行时想要绑定两个分开的组件(比如两个Activity(一个Activity跳转到另一个Activity))。Intent展现的是一个应用程序:想要去做的事。我们可以使用它来做多种类型的任务,但是通常用它来启动另一个Activity的。

一个Intent不但允许你启动另一个Activity的,而且可以携带一个Bundle类型的数据(data)。

例如:

Intent intent = new Intent(this, DisplayMessageActivity.class);EditText editText = (EditText) findViewById(R.id.edit_message);String message = editText.getText().toString();intent.putExtra(EXTRA_MESSAGE, message);

发送一个Intent到其他应用程序中:

Intent intent = new Intent(this, DisplayMessageActivity.class);

因为Intent定义了明确的app组件,所以是显式的Intent。Intent也可以是隐式的(隐式的Intent不声明要传递的组件名),只要Intent的meta-data满足特定的action,所有手机安装的软件都可以响应这个Intent。


一个Intent可以携带各种的key-value对通过putExtra()方法。

public class MainActivity extends Activity {    public final static String EXTRA_MESSAGE = "com.example.myfirstapp.MESSAGE";    ...}

一般这样写key比较好,用包名做前缀,在和其他应用程序交互的时候,可以确保它是唯一的。


0 0
原创粉丝点击