Android——Activity和Intent

 一,关于Intent

          先看看一个Intent包含啥:

1,Component name:决定启动哪一个组件

2,action:activity应该做哪些动作

3,data:一个activity向另外一个activity传递的数据

4,category:

5,extras:键值对

6,flags

         跟.net里面的httprequest对比,感觉还是蛮像的,好巧啊。

二,在一个Activity中启动另外一个Activity

           首先我们创建两个Activity,在启动时进入的Activity中加入一个按钮,点击这个按钮,然后跳转到另外一个Activity.

            

package com.example.activity_02;

import android.net.Uri;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class MainActivity extends Activity {

	private Button myButton=null;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main); //设置当前布局使用的xml
        myButton=(Button)findViewById(R.id.myButton);  //获取activity上的button
        myButton.setOnClickListener(new MyButtonListerner());  //将MyButtonListerner捆绑到myButton上面   ,实现点击的时候跳转
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }

    class MyButtonListerner implements OnClickListener{

  		@Override
  		public void onClick(View arg0) {
  			// TODO 自动生成的方法存根

  			//生成一个Intent对象
  			Intent intent=new Intent();
  			intent.putExtra("textIntent", "pbc");//在Intent中放入键值对,进行传递
  			intent.setClass(MainActivity.this,OtherActivity.class); //设置从当前activity跳转到OtherActivity
  			MainActivity.this.startActivity(intent);	//启动另外的Activity

  			/*Uri uri=Uri.parse("smsto://0800000123");
  			Intent intent=new Intent(Intent.ACTION_SENDTO,uri);
  			intent.putExtra("the sms body", "the sms text");
  			startActivity(intent);*/

  		}
    }
}

        首先我们要在按钮上添加一个类似事件监听的东西,在点击的时候去做一些跳转处理。之后在这个具体的处理过程中,我们使用Intent对象来实现传递值,设置从当前Activity跳转到那个Activity.也可以使用Intent调用系统的功能。

          

 小结:

         举个例子,在BS还是在CS中,页面窗体传值都是必不可少的东西,到了安卓开发这里,又出现了这类东西;所以根据前面东西的学习,类推下,可以对比得出安卓需要哪些基础的知识。

时间: 2024-12-21 12:10:14

Android——Activity和Intent的相关文章

Android Activity与Intent详解及示例代码_Android

Android有三个基础组件Activity,Service和BroadcastReceiver,他们都是依赖Intent来启动.本文介绍的是Activity的生命周期以及针对Activity的Intent使用.        之前的例子一直都是使用Activity,在一个Layout XML与一个Activity捆绑的情况下可以视为一个Form,多个Layout XML与一个Activity捆绑的话那就是个Application本身了.Intent可以分为显式Intent和隐式Intent:显

Android如何使用Intent来启动Activity

Intent的用途是绑定应用程序组件, 并在应用程序之间进行通信; startActivity(), 传递Intent参数, 创建并显示一个Activity; 使用Intent解析(resolution)动态的选择最匹配的Activity. 显示启动Activity: 创建一个Intent, 指定当前的语境(context)和Activity类(class), 然后传递给startActivity()进行创建; 简易说明: Intent intent = new Intent (MyActivi

Android的Activity和Intent

一个Android应用程序中一般都有不止一个的Activity,这多个Activity之间 要相互通信和传递数据或者从一个Activity跳转到另一个Activity.这样才能使 得一个应用程序可以有丰富的功能和多元化的界面. Activity传递数据和相互跳转需要用到Intent对象.Intent在Android程序中 有很多的用途.我们现在主要关注它在两个Activity之间通信所起的作用.简单 地说Intent就是Android对象提供的Activity之间传递数据和操作指令的载体. In

Android Activity 的四种启动模式 lunchMode 和 Intent.setFlags();singleTask的两种启动方式。

原文:Android Activity 的四种启动模式 lunchMode 和 Intent.setFlags();singleTask的两种启动方式. Android Activity 的四种启动模式 lunchMode 和 Intent.setFlags(); 一.Android Activity 四种启动模式 lunchMode 在Manifest 配置文件中的属性如下: (1) android:launchMode="standard" (2)android:launchMod

Android Activity中使用Intent实现页面跳转与参数传递的方法_Android

本文实例讲述了Android Activity中使用Intent实现页面跳转与参数传递的方法.分享给大家供大家参考,具体如下: 新建一个FirstAvtivity.java package com.zhuguangwei; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.view.View.O

Android Activity中使用Intent实现页面跳转与参数传递的方法

本文实例讲述了Android Activity中使用Intent实现页面跳转与参数传递的方法.分享给大家供大家参考,具体如下: 新建一个FirstAvtivity.java package com.zhuguangwei; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.view.View.O

Android中的Intent Filter简介

Intent是Android应用程序核心组件之间通信和传递信息的核心机制.与之相关的IntentFilter也具有相关的安全机制(测试)来进行约束.本文将对其进行详细介绍. 一.Intent和IntentFilter简介 一个应用程序的三个核心组件(活动,服务和广播接收器)都是通过消息即意图(Intents)来激活的.Intent消息传送是相同或不同应用中组件运行时晚绑定的一种机制.意图本身(一个意图对象)是一个包含被执行操作抽象描述的被动的数据结构.或,对于广播而言,是某件已经发生并被声明的事

我的Android进阶之旅------>Android Activity的singleTask加载模式和onActivityResult方法之间的冲突

         今天调试一个bug的时候,情景如下:           一个Activity A,需要用startActivityForResult方法开启Activity B.Activity B的launch mode被设置为singleTask,那么在Activity B开启之后的瞬间(未等B返回任何result),Activity A中的onActivityResult方法就会被调用,并且收到一个RESULT_CANCEL的request code.          然后在Acti

怎么重启一个android activity?

问题描述 怎么重启一个android activity? 怎么重启一个activity?我试着像下边这么做,但是activity仍然只是退出. public static void restartActivity(Activity act){ Intent intent=new Intent(); intent.setClass(act, act.getClass()); act.startActivity(intent); act.finish(); } 解决方案 我是这样做的主题转换: In