1、Intent是一种运行时绑定(runtime bingding)机制,它能在程序运行的过程中连接两个不同的组件。通过Intent,你的程序可以向Android表达某种

请求或者意愿,Android会根据意愿的内容选择适当的组件来请求。

2、在这些组件之间的通讯中,主要是由Intent协助完成的。

Intent负责对应用中一次操作的动作,动作设计数据、附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将Intent传递给调用的组件,

并完成组件的调用。

3、因此,Intent在这里起这一个媒体中介的作用,专门提供组件相互调用的相关信息,实现调用者与被调用者之间的解耦。

例如:在一个联系人维护的应用中,当我在一个联系人列表屏幕(建设对应的Activity为listActivity)上,点击某个联系人后,希望能够跳出此联系人的详细信息

屏幕(折射对应的Activity为detailactivity)。

4、为了实现这个目的,listActivity需要构造一个Intent,这个Intent用于告诉系统,我们要做“查看”动作。

此动作对应的查看对象“某某联系人”,然后调用startActivity(Intent intent),将构造的Intent传入,系统会根据此Intent中

描述,到ManiFest中找到满足此Intent要求的Acitvity,系统会调用找到Activity,即为detailActivity,最终传入Intent

detailActivity则会根据此Intent中的描述,执行响应的操作。

package com.example.app.intentchuandi;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button; public class MainActivity extends AppCompatActivity { private Button button; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); //加载视图
button = (Button)this.findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(MainActivity.this,IntentClas.class);
intent.putExtra("hjk","张三");
intent.putExtra("age","");
intent.putExtra("address","南京");
//启动意图
startActivity(intent);
}
});
}
}
    @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.layout);
Intent intent = getIntent();
int age = intent.getIntExtra("age",);
String hjk = intent.getStringExtra("hjk");
String address = intent.getStringExtra("address");
textView = (TextView)this.findViewById(R.id.sf);
textView.setText("age---->>"+age+"\n"+"name--->>"+hjk+"address--->>"+address); }

什么是Intent(意图)的更多相关文章

  1. Android 之 Intent(意图)

    Intent是 Android中重要的桥梁之一,它分为显式意图和隐式意图.接下来分别针对这两种意图进行讲解. 显式意图:通过指定一组数据或动作,激活应用内部的 activity:(相比隐式意图,此做法 ...

  2. Intent(意图)

    Intent的中文意思是“意图,目的”的意思,可以理解为不同组件之间通信的“媒介”或者“信使”. 目标组件一般要通过Intent来声明自己的条件,一般通过组件中的<intent-filter&g ...

  3. Intent 意图 结构 简介

    Intent简介 官方解释: An intent is an abstract description of an operation操作 to be performed展示.表演. It can b ...

  4. 玩转Android---组件篇---Intent(意图)

    Intent的中文意思是“意图,目的”的意思,可以理解为不同组件之间通信的“媒介”或者“信使”. 目标组件一般要通过Intent来声明自己的条件,一般通过组件中的<intent-filter&g ...

  5. Intent意图

    1.显式Intent button1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(Vie ...

  6. android intent 隐式意图和显示意图(activity跳转)

    android中的意图有显示意图和隐式意图两种, 显示意图要求必须知道被激活组件的包和class 隐式意图只需要知道跳转activity的动作和数据,就可以激活对应的组件 A 主activity  B ...

  7. android小知识之意图(intent)

    android中的意图有显示意图和隐式意图两种, 显示意图要求必须知道被激活组件的包和class 隐式意图只需要知道跳转activity的动作和数据,就可以激活对应的组件 A 主activity  B ...

  8. 第五篇-以显式意图(Explicit Intent)跳往其它Activity

    此项目基于第四篇. Intent(意图) Explicit Intent(显式意图): 清楚指明需要前往的Activity的名称 用于APP内部的连接 Inplicit Intent(隐式意图): 不 ...

  9. Android--Intent(意图)

    Intent(意图)是安卓系统中最重要的概念, 它是一种消息传递机制, 用于系统与应用程序组件之间的交互, 意图可以分为3类, 分别是: 活动意图, 广播意图和服务意图 1. Activity Int ...

随机推荐

  1. shell脚本练习

    写一个脚本:1.设定变量FILE的值为/etc/passwd2.依次向/etc/passwd中的每个用户问好,并显示对方的shell,形如: Hello, root, your shell: /bin ...

  2. MySQL用户管理语句001

    总的来说mysql的用户管理方法可以分为如下两种: 1.直接对mysql.user 表进行[insert | update | delete] + flush privileges 这种方式主要针对那 ...

  3. jQuery中$.proxy()的原理和使用

    jQuery.proxy(),接受一个函数,然后返回一个新函数,并且这个新函数始终保持了特定的上下文(context )语境. jQuery.proxy( function, context ) fu ...

  4. javascript之Number

    一.构造函数 Number(value) new Number(value) 二.Number属性 1.Number.MAX_VALUE 返回能表示的最大数字. 2.Number.MIN_VALUE ...

  5. C# 内存泄露

    一.事件引起的内存泄露 1.不手动注销事件也不发生内存泄露的情况 我们经常会写EventHandler += AFunction; 如果没有手动注销这个Event handler类似:EventHan ...

  6. 正则取页面图片URL和TABLE BackGround

    /// <summary> /// 根据html文本返回url地址集合 /// </summary> /// <param name="sHtmlText&qu ...

  7. Hadoop: the definitive guide 第三版 拾遗 第十二章 之Hive分区表、桶

    Hive分区表 在Hive Select查询中一般会扫描整个表内容,会消耗很多时间做没必要的工作.有时候只需要扫描表中关心的一部分数据,因此建表时引入了partition概念.分区表指的是在创建表时指 ...

  8. MongoDB C Driver and APIinstances linux MongoDB安装配置

    <一,linux平台MongoDB安装配置>在这我们使用的Centos6 yum部署的,你想搞编译,自个干!

  9. C语言使用正则表达式

    http://blog.chinaunix.net/uid-479984-id-2114941.html C语言使用正则表达式 据说一个好的程序员是会使用DB和Regular Expression的程 ...

  10. hdu 5441 Travel(并查集)

    Problem Description Jack likes to travel around the world, but he doesn’t like to wait. Now, he is t ...