`

Android中的Intent

阅读更多

Android中的Intent

一、程序效果

     实现两个Activity间信息的传递,本程序通过Intent对象进行传递。

二、代码编写与解析

     1.编写两个Activity对应的layout:main.xml和other.xml

     main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
    
    <Button
    android:id="@+id/myButton"
    android:text="点击跳转"
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    />
</LinearLayout>
 

     other.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView  
	android:id="@+id/myTextView"
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    />
</LinearLayout>
 

     2.在编写两个Activity

     Activity02.java

 

package linys.activity;

import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
/**
 * 
 * @Project: Android_Activity02_Intent
 * @Desciption: intent用来传递Activity间的信息:
 * 一个Intent对象主要包括:
 * 1.Component name
 * 2.Action
 * 3.Data
 * 4.Extras
 * @Author: LinYiSong
 * @Date: 2011-3-25~2011-3-25
 */
public class Activity02 extends Activity {
	Button btn;
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        btn=(Button)findViewById(R.id.myButton);
        btn.setOnClickListener(new BtnListener());//添加监听器
    }
    
    class BtnListener implements OnClickListener{
		@Override
		public void onClick(View v) {
			Intent intent =new Intent();
			//往Intent中添加键值对Extra
			intent.putExtra("key","value");
			intent.setClass(Activity02.this, OtherActivity.class);//设置转向的两个类
			
			Activity02.this.startActivity(intent);//Activity02启动传递
			
			//利用android自带的发短信功能
//			Uri uri=Uri.parse("smsto://0800000123");
//			Intent intent=new Intent(Intent.ACTION_SENDTO,uri);
//			intent.putExtra("key","value");
//			Activity02.this.startActivity(intent);
		}
    }
}
 

     OtherActivity.java

 

package linys.activity;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TextView;

public class OtherActivity extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.other);
        
        TextView textView=(TextView)findViewById(R.id.myTextView);
        //取出Intent把Intent中的值设置成TextView的内容
        Intent intent=this.getIntent();
        String value=intent.getStringExtra("key");
        textView.setText(value);
    }
}
 

三、程序解析

1.intent用来传递Activity间的信息:

一个Intent对象主要包括:
 * 1.Component name
 * 2.Action
 * 3.Data
 * 4.Extras:一个键值对,相当于一个map

2.Intent对象的操作

*1.new出对象

*2.往intent中放入传递的信息

*3.指定Activity间的转向,一个Activity对象-->另一个Activity类

*4.启动转向

分享到:
评论

相关推荐

    Android中Intent的Uri使用

    ### Android中Intent的Uri使用详解 #### 概述 在Android开发中,`Intent`是进行组件间通信的重要工具之一,它可以启动一个Activity、BroadcastReceiver或Service,也可以用来向服务发送数据请求。其中,`Intent`的...

    android中Intent传递对象的两种方法(Serializable,Parcelable)

    当我们需要在Intent中传递复杂对象时,有两种主要的方法:Serializable和Parcelable。这两种方式都可以实现对象的序列化,但它们在性能和效率上存在差异。 **Serializable接口** Serializable接口是Java提供的一个...

    Android中Intent的使用

    在Android开发中,Intent是一个非常核心的组件,它充当了应用程序不同组件之间的信使,用于在组件间传递消息和启动动作。这篇博客“Android中Intent的使用”将深入讲解Intent的基本概念、类型以及如何在实际开发中...

    Android的Intent实验

    - `putExtra()`: 用于添加额外的数据到Intent中,例如字符串、整数、布尔值等,以便在目标组件中通过`getExtras()`获取。 - `setFlags()`: 设置Intent的标志,影响Intent的处理方式,如FLAG_ACTIVITY_NEW_TASK用于...

    Android中intent的使用

    在Android应用开发中,Intent是连接应用程序组件之间通信的关键机制,它用于启动其他组件或传递数据。本篇文章将深入探讨Intent的基本概念、类型、构造方法以及如何在Android中有效地使用Intent。 Intent是一种意图...

    android中intent使用示例

    在Android开发中,Intent是一种非常重要的组件间通信机制。它被用来启动活动(Activity)、服务(Service)或者传递数据。本示例将深入探讨Intent的基本用法和常见应用场景。 首先,Intent分为显式Intent和隐式...

    Android中Intent和ProgressBar的结合使用

    在Android应用开发中,Intent和ProgressBar是两个非常关键的组件。Intent主要用于启动活动(Activity)、服务(Service)或广播接收器(BroadcastReceiver),而ProgressBar则是显示进度或加载状态的控件,为用户...

    Android中Intent Demo

    6. Parcelable接口:对于更复杂的数据结构,如自定义对象,你可以使对象实现Parcelable接口,这样可以在Intent中直接传递对象。实现Parcelable接口涉及多个步骤,包括创建描述符类、实现writeToParcel()和...

    Android中Intent传递对象的两种方法(Serializable,Parcelable)

    Android中Intent中如何传递对象,就我目前所知道的有两种方法,一种是Bundle.putSerializable(Key,Object);另一种是Bundle.putParcelable(Key, Object);当然这些Object是有一定的条件的,前者是实现了Serializable...

    Android中Intent习惯用法

    在Android开发中,Intent是一个至关重要的组件,它用于在组件之间传递消息,启动或激活服务。Intent不仅可以用来启动活动(Activity),还可以启动服务(Service)或者广播接收器(BroadcastReceiver)。在本文中,...

    Android中Intent使用、数据回写(显)

    - 使用`putExtra()`方法可以在Intent中添加额外的数据,如`intent.putExtra("key", "value");` - 数据类型包括基本类型(int、String等)、Parcelable(自定义对象、Bitmap等)和Serializable(复杂对象)。 3. *...

    android中intent可启动的应用举例2022优秀文档.pptx

    在Android开发中,Intent是一种非常重要的组件,它用于在应用程序之间传递消息,启动或激活服务。本篇将详细解析如何使用Intent启动各种类型的应用。 1. **浏览网页与谷歌搜索**: - 使用`Intent.ACTION_VIEW`启动...

    Android中Intent的定义与作用.pdf

    通过调用`putExtra()`方法可以将数据附加到Intent中,例如: ```java i.putExtra("result", result); ``` 这里的`result`是你要传递的变量名,`result`变量的值就是传递的数据。 5. 启动Intent 一旦Intent准备好了...

    Android利用Intent启动和关闭Activity

    在Android应用程序开发中,Intent是连接各个组件(如Activity、Service等)的关键桥梁,主要用于启动和关闭Activity。Intent不仅能够启动一个新的Activity,还能在Activity之间传递数据,实现应用内部或应用间的交互...

    android intent 代码

    在Android开发中,Intent是一个非常重要的概念,它用于在组件之间传递消息,是Android系统启动服务、启动或跳转Activity的主要手段。本篇文章将详细解释Intent的基本使用以及如何通过Intent实现在两个Activities之间...

    android中intent传递list或者对象的方法

    本文实例讲述了android中intent传递list或者对象的方法。分享给大家供大家参考。具体实现方法如下: 方法一: 如果单纯的传递List&lt;String&gt; 或者List的话 就可以直接使用 代码如下: 代码如下:intent....

    Android中Intent的常用方法一览.pdf

    - `putExtra(String name, boolean value)`等:将各种类型的数据添加到Intent中,如布尔值、字符串、数组等。 - `setAction(String action)`:设置Intent的动作。 - `setData(Uri uri)`:设置数据Uri。 - `...

Global site tag (gtag.js) - Google Analytics