android studio组件通信:Intend启动Activity接收返回结果

实验目的:

熟悉和掌握Android组件间通信的方式和技巧。

实验要求:

1.运行课本的示例程序,理解组件通信的方式和过程
2.设计一个主Activity和一个子Activity(Sub-Activity),使用主Activity上的按钮启动子Activity,并将子Activity的一些信息返回给主Activity,并显示在主Activity上。

可以自己设计界面和场景,也可以使用下面提供的内容:

主Activity界面上有一个“登录”按钮和一个用了显示信息的TextView,点击“登录”按钮后打开一个新的Activity,新Activity上面有输入用户名的控件,在用户关闭这个Activity后,将用户输入的用户名到主Activity,并显示在主Activity的TextView中。

实验结果:

实验代码:

MainActivity.java

package com.example.shiyan4;

import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

public class MainActivity extends AppCompatActivity {

    int Subact1=1;
    TextView textView;
    @Override
    protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if(requestCode==Subact1)
        {
            //String str= data.getStringExtra("userstr");

            textView.setText("用户名:"+data.getCharSequenceExtra("userstr"));
        }
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Button button=(Button) findViewById(R.id.button);
        textView=findViewById(R.id.textview);
        button.setOnClickListener(new View.OnClickListener(){

            @Override
            public void onClick(View view) {
                Intent intent=new Intent(MainActivity.this,Subactivity.class);//显式启动方式
                //Intent intent1=new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.baidu.com"));
                Intent intent2=new Intent("sub1");//隐式启动方式
                startActivityForResult(intent2,Subact1);
            }
        });

    }
}

SubActivity.java

package com.example.shiyan4;

import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;

import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;

public class Subactivity extends AppCompatActivity {

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.sub_layout);
        Button button=(Button) findViewById(R.id.button2);
        EditText editText=(EditText)findViewById(R.id.editview);

        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent intent=new Intent(Subactivity.this,MainActivity.class);
                intent.putExtra("userstr",editText.getText());
                setResult(RESULT_OK,intent);
                finish();
            }
        });

    }
}

到此这篇关于android studio组件通信:Intend启动Activity接收返回结果的文章就介绍到这了,更多相关Intend启动Activity接收返回结果内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • android studio 项目 :UI设计高精度实现简单计算器

    UI设计: 实验目的: 自主完成一个简单APP的设计工作,综合应用已经学到的Android UI设计技巧,重点注意合理使用布局.实验要求: 1.完成一个计算器的设计,可以以手机自带的计算器为参考.设计过程中,注意考虑界面的美观性,不同机型的适应性,以及功能的完备性. 2.注意结合Activity的生命周期,考虑不同情况下计算器的界面状态. 3.如有余力,可以考虑实现一个高精度科学计算型的计算器. 实现效果: 整数和浮点数的加减乘除.取余.开根号,异号.清零 计算结果全部实现. 精度保留到小数点后

  • android studio实验: UI设计 ListView及事件响应

    实验目的: 1.学习使用ListView及其事件响应方法. 2.阅读sdk/doc/index脱机文档或者在Android developer开发者网站上,学习使用弹出菜单PopupMenu及其事件响应方法. 实验要求: 1.实现一个列表,其中显示班级学号姓名,提供添加功能 2.对添加的选项,通过长按某项,调用弹出菜单显示删除功能,并删除该选项. package com.example.shiyan3; import androidx.annotation.NonNull; import and

  • android studio组件通信:Intend启动Activity接收返回结果

    实验目的: 熟悉和掌握Android组件间通信的方式和技巧. 实验要求: 1.运行课本的示例程序,理解组件通信的方式和过程2.设计一个主Activity和一个子Activity(Sub-Activity),使用主Activity上的按钮启动子Activity,并将子Activity的一些信息返回给主Activity,并显示在主Activity上. 可以自己设计界面和场景,也可以使用下面提供的内容: 主Activity界面上有一个“登录”按钮和一个用了显示信息的TextView,点击“登录”按钮后

  • Android Studio Intent隐式启动,发短信,拨号,打电话,访问网页等实例代码

    Android Studio Intent隐式启动,发短信,拨号,打电话,访问网页等实例代码 功能 创建5个按钮,隐式启动.发短信.拨号按钮.电话按钮.打开网页按钮.通过使用Intent来完成各自按钮下的功能 代码目录如下 详细代码如下: activity_main.xml代码如下 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://sc

  • Activity实例详解之启动activity并返回结果

    先给大家展示下效果展示图: 1 简介 如果想在Activity中得到新打开Activity 关闭后返回的数据,需要使用系统提供的startActivityForResult(Intent intent, int requestCode)方法打开新的Activity,新的Activity 关闭后会向前面的Activity传回数据,为了得到传回的数据,必须在前面的Activity中重写onActivityResult(int requestCode, int resultCode, Intent d

  • Android Studio 3.6安装全过程及AVD安装运行步骤详解

    1.安装JDK1.7以上版本,Android Studio集成开发环境 (1)安装并检查JDK1.8,如图1.1所示 图1.1 配置完成的验证 (2)开始安装Android Studio集成开发环境,安装允许以管理员模式运行,如图1.2所示 图1.2 安装界面 (3)安装位置为F:\Studio\ android-studio-ide-192.6200805-windows,进行安装,如图1.3所示 图1.3 安装位置 (4)Android Studio集成开发环境安装完成,如图1.4所示 图1

  • Android studio 3.0安装配置方法图文教程

    本文为大家分享了Android studio安装与配置,具体内容如下 1.首先下载Android studio安装包,可以从http://www.android-studio.org/,下载最新版本,这里采用3.0版本进行演示,对应安装包为android-studio-ide-171.4408382-windows.exe,安装包大小681 MB,安装包不带SDK 2.下载好该安装包之后,点击进行安装,依次出现以下界面 在这里自己选择程序安装路径 这里Android studio程序安装完毕,但

  • Android Studio error: Unable to start the daemon process的解决方法

    在 Android Studio 上新建项目,出现 Unable to start the daemon process. 错误,具体错误信息如下: Error:Unable to start the daemon process. This problem might be caused by incorrect configuration of the daemon. For example, an unrecognized jvm option is used. Please refer

  • Android四大组件之Activity详细介绍

    目录 理论概述 Activity的理解 Activity的定义 Activity的作用 类比Activity与Servlet Intent的理解 Intent的分类 Intent的使用 IntentFilter的理解 相关的API 设置点击监听 Activity中添加监听 layout中添加监听 设置长按监听 Activity的开发 开发流程 Activity的使用  总结 理论概述 Activity的理解 Activity的定义 Activity,字面翻译为活动,他是Android定义的四大应

  • Android四大组件之Activity深入解读生命周期

    目录 一.什么是Activity 二.Activity之间的跳转 三.Activity 生命周期 3.1.Activity生命周期的基本状态 3.2.Activity 生命周期的7个方法 3.3.Activity 生命周期的三个循环 简介:在Android组件中最基本也是最为常见的四大组件: Activity Service服务 Content Provider内容提供者 BroadcastReceiver广播接收器 一.什么是Activity Activity是一个应用程序组件,提供一个屏幕,

  • Android Studio的安装及第一次启动时的配置问题

    一.下载Android Studio 百度搜索"Android Studio" 点击中文社区进入,选择最新版本下载. 下载后双击安装包开始安装. 安装好后点击程序运行,进入第一次运行时的配置. 出现"Unable to access Android SDK add-on list",百度后说是第一次启动还没有下载Android SDK所致,点Cancel继续下一步即可. 开始配置. 等待下载组件. 出现启动界面,至此第一次安装启动到此告一段落. 总结 以上所述是小编

  • Android studio虚拟机在启动界面和桌面出现画面模糊花屏问题的解决方法

    1.之前自己的虚拟机这样设置没问题,今天突然出现这样的花屏 2.最后解决了,解决方法,按照下边红框设置 3.问题方法说明: 之前看不太明白,就找的翻译 反思:之前是设置的自动(默认是硬件渲染)可以,今天突然出现花屏那样的问题,搜遍全网没找到方法,最后有个大佬指点按照上边的方法设置(软件渲染)配置虚拟机,解决. 可能自己电脑硬件图形卡(不知道什么东东)哪里出了问题,也可能不小心更新组件后,android studio的设置出问题啦. 总结 到此这篇关于Android studio虚拟机在启动界面和

随机推荐