Activity 和 Intent

一、Intent指向Activity

二、利用 Intent 向第二个 Activity 传数据

三、利用 Intent 接受第二个 Activity 的返回值

四、利用 Intent 调用 内置应用程序

一、Intent指向Activity

        Button btnStartAty1=(Button) findViewById(R.id.btnStartAty1);
        btnStartAty1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                Intent i=new Intent(MainActivity.this,aty1.class);
                startActivity(i);
            }
        });

代码解释:

在按钮 btnStartAty1 的点击事件中,创建一个Intent对象(参数:MainActivity是当前Activity,aty1是Intent指向的Activity),

startActivity(i) 就是以Intent作为参数来启动Activity,这样,我们只要点击MainActivity中的btnStartAty1,

程序就会从MainActivity切换到Activity Aty1。

二、利用 Intent 向第二个 Activity 传数据

利用Intent传值,是在是在一中的基础上进行的,分为传递单个值和多个值,如下代码

        Button btnCloseAty1=(Button) findViewById(R.id.btnCloseAty1);
btnCloseAty1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                finish();
            }
        });
        
        Button btnSendToAty2=(Button) findViewById(R.id.btnSendToAty2);
        btnSendToAty2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                
                ////绑定数据——putExtra传值
                //Intent i=new Intent(aty1.this,aty2.class);
                //i.putExtra("Name", "aty2");
                //startActivity(i);
                
                //绑定成一捆数据——putExtras
                Intent i=new Intent(aty1.this,aty2.class);
                Bundle extras=new Bundle();
                extras.putString("Name", "aty2");
                extras.putString("Gender", "male");
                i.putExtras(extras);
                startActivity(i);
            }

在第二个 Activity 中取值的代码:

    @Override
    protected void onCreate(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        setContentView(R.layout.aty2);
        
        ////获取绑定的数据
        //String defaultName=getIntent().getStringExtra("Name");
        
       
//获取一捆数据
        Bundle extras=getIntent().getExtras();
        
String defaultName==extras.getString("Name");
        String defaultGender=extras.getString("Gender");
    }

三、利用 Intent 接受第二个 Activity 的返回值

         Button btnGetReturndata=(Button) findViewById(R.id.btnGetReturndata);
 btnGetReturndata.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                Intent i=new Intent(aty2.this,aty3.class);
                
                startActivityForResult(i,0);
            }
        });

在第二个Activity中设置返回的值:

        Intent i=new Intent();
i.putExtra("result", "this string is passed by aty3");
        
        setResult(0,i);
        finish();

Activity 和 Intent的更多相关文章

  1. Android 学习Activity(1)activity和intent

    工具是:JDK环境配置+SDK+ADT工具 一.Activity  主要作用: 1.用户与应用程序的接口 2.控件的容器 二.创建Activity要点:(在src中的目录下包里) 1.一个Activi ...

  2. 常见的Activity Action Intent常量

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

  3. 【转】Android Activity和Intent机制学习笔记----不错

    原文网址:http://www.cnblogs.com/feisky/archive/2010/01/16/1649081.html Activity Android中,Activity是所有程序的根 ...

  4. Android Activity和Intent机制学习笔记

    转自 http://www.cnblogs.com/feisky: Activity Android中,Activity是所有程序的根本,所有程序的流程都运行在Activity之中,Activity具 ...

  5. Activity及Intent

    1.Activity 在一个Android应用程序中,Activity是为用户操作而展示的可视化界面.比如你要打电话,这个时候的拨号界面就是一个Activity,你要发短信给你的女朋友,这个短信窗口就 ...

  6. 二、activity与Intent

    (一) 多个activity之间的跳转(无值传递) 第一步:创建activity(其实就是jave文件),并进行注册 在AndroidManifest.xml中 <activity androi ...

  7. 【Android开发学习笔记】【第三课】Activity和Intent

    首先来看一个Activity当中启动另一个Activity,直接上代码说吧: (1)首先要多个Activity,那么首先在res-layout下新建一个 Other.xml,用来充当第二个Activi ...

  8. 5、四大组件之一-Activity与Intent

    一.Activity的定义及作用 1)官方定义:Activity是Android应用程序提供交互界面的一个重要组件 . 也是Android最重要的组件之一 2)Activity是业务类 , 是承载应用 ...

  9. 多个Activity和Intent(转)

    根据www.mars-droid.com:Andriod开发视频教学,先跳过书本<Beginning Android 2>的几个章,我是这两个资源一起看,需要进行一下同步.先初步了解一下应 ...

随机推荐

  1. judge loop in undirected graph

    一 深度优先遍历,参考前面DFS(white and gray and black) 二 根据定点以及边数目进行判断 如果m(edge)大于n(vertex),那么肯定存在环 算法如下: 1 删除所有 ...

  2. 第四节 二维条码与磁卡、IC卡、光卡之比较

    二维条码同其他几种自动识别技术的比较可见下表: 比较点 二维条形码 磁卡 IC卡 光卡 抗磁力 强 弱 中等 强 抗静电 强 中等 中等 强 抗损性 强可折叠可局部穿孔可局部切割 弱不可折叠不可穿孔不 ...

  3. qt实现-给SQLITE添加自定义函数

    需要使用sqlite里的password对某个字段进行加密,由于使用的sqlite是由QT封装好的QSqlDatabase,没有发现加载扩展函数的方法,所以自己实现了一个. 在网上也没找到相应的参考, ...

  4. 梳排序(Comb sort)

    Comb Sort,梳排序或者梳子排序,就像梳子那样有间隔地比较两个数,很形象,O(n*logn)时间复杂度,O(1)空间复杂度,属于不稳定的排序算法.算法的思想是使逆序的元素尽可能快地移动到最终的位 ...

  5. BZOJ 1611: [Usaco2008 Feb]Meteor Shower流星雨

    1611: [Usaco2008 Feb]Meteor Shower流星雨 Description 去年偶们湖南遭受N年不遇到冰冻灾害,现在芙蓉哥哥则听说另一个骇人听闻的消息: 一场流星雨即将袭击整个 ...

  6. Flow Problem(最大流)

    Flow Problem Time Limit: 5000/5000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others) Tot ...

  7. mac 系统开发android,真机调试解决方式(无数的坑之后吐血总结)

    近期学习android开发,安装了ADT开发环境之后,启动模拟器,慢的要死啊,全然不如苹果的好用,没法,自己买个android手机,准备联机调试程序.没想到在这个过程中,遇到了好多的坑,作为一个新人, ...

  8. c++,static 静态成员变量 / 静态成员函数

    静态成员变量: //静态成员变量(static) // //1.如果想在同类的多个对象之间实现数据共享 ,可以用静态 //成员变量,即用static修饰的成员变量,例 static int a; // ...

  9. iOS字符串NSString中去掉空格(或替换为某个字符串)

    http://blog.sina.com.cn/s/blog_6f29e81f0101qwbk.html [问题描述]       今天请求服务器返回的字段中含有空格,这空格是服务器开发人员不小心往数 ...

  10. beep的控制程序

    参照艾米电子的程序进行改写的 //date : 2014,5,4 module for_beep ( clock , reset , out_beep ); input clock ,reset ; ...