Android——Activity和Intent

简介:  一,关于Intent          先看看一个Intent包含啥:1,Component name:决定启动哪一个组件2,action:activity应该做哪些动作3,data:一个activity向另外一个activity传递的数据4,category:5,extras:键值对6,flags         跟.net里面的httprequest对比,感觉还是蛮像的,好巧啊。

 一,关于Intent


          先看看一个Intent包含啥:

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

2,actionactivity应该做哪些动作

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中,页面窗体传值都是必不可少的东西,到了安卓开发这里,又出现了这类东西;所以根据前面东西的学习,类推下,可以对比得出安卓需要哪些基础的知识。







目录
相关文章
|
3月前
|
Android开发
Android面试之Activity启动流程简述
Android面试之Activity启动流程简述
99 6
|
3月前
|
消息中间件 Android开发 索引
Android面试高频知识点(4) 详解Activity的启动流程
Android面试高频知识点(4) 详解Activity的启动流程
34 3
|
3月前
|
缓存 前端开发 Android开发
Android实战之如何截取Activity或者Fragment的内容?
本文首发于公众号“AntDream”,介绍了如何在Android中截取Activity或Fragment的屏幕内容并保存为图片。包括截取整个Activity、特定控件或区域的方法,以及处理包含RecyclerView的复杂情况。
31 3
|
3月前
|
Android开发
Android面试之Activity启动流程简述
Android面试之Activity启动流程简述
24 0
|
4月前
|
消息中间件 Android开发 索引
Android面试高频知识点(4) 详解Activity的启动流程
讲解Activity的启动流程了,Activity的启动流程相对复杂一下,涉及到了Activity中的生命周期方法,涉及到了Android体系的CS模式,涉及到了Android中进程通讯Binder机制等等, 首先介绍一下Activity,这里引用一下Android guide中对Activity的介绍:
61 4
|
5月前
|
XML Android开发 数据格式
android中两个Activity同时设定了intent-filter的category为android.intent.category.LAUNCHER,会发生什么情况?
本文通过案例分析了在Android中当两个Activity都设置了`android.intent.category.LAUNCHER`类别时,会导致它们同时在应用启动器的"所有应用"页面显示为不同的启动入口。
138 2
android中两个Activity同时设定了intent-filter的category为android.intent.category.LAUNCHER,会发生什么情况?
|
3月前
|
存储 大数据 数据库
Android经典面试题之Intent传递数据大小为什么限制是1M?
在 Android 中,使用 Intent 传递数据时存在约 1MB 的大小限制,这是由于 Binder 机制的事务缓冲区限制、Intent 的设计初衷以及内存消耗和性能问题所致。推荐使用文件存储、SharedPreferences、数据库存储或 ContentProvider 等方式传递大数据。
108 0
|
4月前
|
Android开发 开发者
Android面试之Activity启动流程简述
每个Android开发者都熟悉的Activity,但你是否了解它的启动流程呢?本文将带你深入了解。启动流程涉及四个关键角色:Launcher进程、SystemServer的AMS、应用程序的ActivityThread及Zygote进程。核心在于AMS与ActivityThread间的通信。文章详细解析了从Launcher启动Activity的过程,包括通过AIDL获取AMS、Zygote进程启动以及ActivityThread与AMS的通信机制。接着介绍了如何创建Application及Activity的具体步骤。整体流程清晰明了,帮助你更深入理解Activity的工作原理。
65 0
|
5月前
|
开发工具 Android开发
解决Manifest merger failed : android:exported needs to be explicitly specified for <activity>
解决Manifest merger failed : android:exported needs to be explicitly specified for <activity>
118 1
|
6月前
|
XML Android开发 数据格式
Android 中如何设置activity的启动动画,让它像dialog一样从底部往上出来
在 Android 中实现 Activity 的对话框式过渡动画:从底部滑入与从顶部滑出。需定义两个 XML 动画文件 `activity_slide_in.xml` 和 `activity_slide_out.xml`,分别控制 Activity 的进入与退出动画。使用 `overridePendingTransition` 方法在启动 (`startActivity`) 或结束 (`finish`) Activity 时应用这些动画。为了使前 Activity 保持静止,可定义 `no_animation.xml` 并在启动新 Activity 时仅设置新 Activity 的进入动画。
159 12