Android开发入门(二)使用意图 2.4 使用Intent传递数据

除了能从一个Activity返回数据结果之外,向一个Activity传递数据也是很常用的。

1. 新建一个 工程,PassData。

2. main.xml中的代码。

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

    <Button
        android:id="@+id/btn_SecondActivity"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:onClick="onClick"
        android:text="Click to go to Second Activity" />     

</LinearLayout>

3. 在res/layout文件夹下,创建secondactivity.xml文件。

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

    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="Welcome to Second Activity" />     

    <Button
        android:id="@+id/btn_MainActivity"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:onClick="onClick"
        android:text="Click to return to main activity" />     

</LinearLayout>

4. 新建一个Activity子类:SecondActivity.java。

public 

class SecondActivity extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.secondactivity);     

        // ---get the data passed in using getStringExtra()---
        Toast.makeText(this, getIntent().getStringExtra("str1"),
                Toast.LENGTH_SHORT).show();     

        // ---get the data passed in using getIntExtra()---
        Toast.makeText(this,
                Integer.toString(getIntent().getIntExtra("age1", 0)),
                Toast.LENGTH_SHORT).show();     

        // ---get the Bundle object passed in---
        Bundle bundle = getIntent().getExtras();     

        // ---get the data using the getString()---
        Toast.makeText(this, bundle.getString("str2"), Toast.LENGTH_SHORT)
                .show();     

        // ---get the data using the getInt() method---
        Toast.makeText(this, Integer.toString(bundle.getInt("age2")),
                Toast.LENGTH_SHORT).show();
    }     

    public void onClick(View view) {
        // ---use an Intent object to return data---
        Intent i = new Intent();     

        // ---use the putExtra() method to return some
        // value---
        i.putExtra("age3", 45);     

        // ---use the setData() method to return some value---
        i.setData(Uri.parse("Something passed back to main activity"));     

        // ---set the result with OK and the Intent object---
        setResult(RESULT_OK, i);     

        // ---destroy the current activity---
        finish();
    }
}

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索activity
, android bundle
, toast
, intent
, data
, 一个
, The
, intent传递bundle
Activity数据传递
intent隐式意图、intent 传递对象、intent 传递list、intent传递list集合、intent传递数据,以便于您获取更多的相关知识。

时间: 2024-12-27 16:38:19

Android开发入门(二)使用意图 2.4 使用Intent传递数据的相关文章

Android开发入门系列

Android开发入门(二十)内容提供者 20.3 经过预定义的查询字符 Android开发入门(二十)内容提供者 20.2 ContentProvider的使用 Android开发入门(二十)内容提供者 20.1 数据共享 Android开发入门(十九)数据库 19.3 预创建数据库 Android开发入门(十九)数据库 19.2 使用数据库 Android开发入门(十九)数据库 19.1创建数据库辅助类 Android开发入门(十八)文件 18.4使用静态资源 Android开发入门(十八)

Android开发入门(二十)内容提供者 20.1 数据共享

在上一章节中,我们介绍了数据持久化的几种方法:首选项,文件,以及数据库.在保存复杂的数据结构 时,推荐使用SQliteDatabase.但是,共享数据就成了一种挑战,因为,数据库只对创建它的程序包可用. 在这一章节中,将会介绍Android特有的数据共享方式:使用ContentProvider.也会介绍如何使用内 置的ContentProvider,以及创建自己的ContentProvider,以便在多个程序包之间共享数据. 在 Android中,共享数据的推荐方式是使用ContentProvi

Android开发入门之Notification用法分析_Android

本文实例讲述了Android中Notification用法.分享给大家供大家参考,具体如下: Notification可以理解为通知的意思一般用来显示广播信息 用Notification就必须要用到NotificationManager 想用Notification一般有三个步骤,如下所示 ① 一般获得系统级的服务NotificationManager. 调用Context.getSystemService(NOTIFICATION_SERVICE)方法即可返回NotificationManag

Android开发入门之Notification用法分析

本文实例讲述了Android中Notification用法.分享给大家供大家参考,具体如下: Notification可以理解为通知的意思一般用来显示广播信息 用Notification就必须要用到NotificationManager 想用Notification一般有三个步骤,如下所示 ① 一般获得系统级的服务NotificationManager. 调用Context.getSystemService(NOTIFICATION_SERVICE)方法即可返回NotificationManag

android开发-Android开发入门初学遇到的问题

问题描述 Android开发入门初学遇到的问题 Android开发入门学习,使用的是<第一行代码Android>郭霖著在学习至2.2.5 在活动中使用Toast中产生如下疑问,期待各位前辈帮我解答图中为输入的代码 问题1.书中原话是可以通过findViewById()方法获取到在布局文件中定义的元素,这里我们传入R.id.button 1,来得到按钮的实例,这里的按钮的实例是什么意思能否麻烦详细解释一下. 问题2.书中说findViewById()返回的是一个View对象,我们需要向下转型将它

android开发-Android开发入门学习遇到的问题

问题描述 Android开发入门学习遇到的问题 Android开发入门学习,使用的是<第一行代码Android>郭霖著其中在2.2.6在活动中使用Menu中遇到问题,书中说打开FirstActivity,重写onCreateOptionsMenu()方法,完成书中代码之后出现截图中呈现的问题,想麻烦各位帮忙解答.拜托各位了 解决方案 用冒号,case R.id.remove_item : case 后面是冒号 解决方案二: 导包呀!不是提示啦!看看你吧 解决方案三: menuitem那里 im

android开发+-Android开发入门学习中遇到的问题

问题描述 Android开发入门学习中遇到的问题 Android初学者,使用的书籍是<第一行代码Android>在书中2.2.2创建和加载布局中在布局文件中编辑添加了按钮之后,为什么要在活动中加载这个布局,原理是什么? 解决方案 布局文件相当于画面,activity相当于画布,在activity中加载布局文件才会显示出布局文件中的布局 解决方案二: 布局就是传给Activity,在安卓手机界面中显示出来

请推荐一本Android开发入门的书籍给我

问题描述 看着现在这些手机app真的很火爆,我也想学习个来玩玩,请推荐一本你们认为不错的Android开发入门的书籍给我,然后再推荐一本进阶的.谢谢啦.. 解决方案 解决方案二:推荐Android版块<Android版块开发资源大汇总>同是新手,相互帮衬

Kinect for Windows SDK开发入门(二)基础知识 上

上篇文章介绍了Kinect开发的环境配置,这篇文章和下一篇文章将介绍Kinect开发的基本知识,为深入研究Kinect for Windows SDK做好基础. 每一个Kinect应用都有一些基本元素.应用程序必须探测和发现链接到设备上的Kinect传感器.在使用这些传感器之前,必须进行初始化,一旦初始化成功后,就能产生数据,我们的程序就能处理这些数据.最后当应用程序关闭是,必须合理的释放这些传感器. 本文第一部分将会介绍如何探测初始化几释放传感器,这是非常基础的话题,但是对于基于Kinect开