Android : Intent(意图)_页面跳转、传递数据_简单应用

示例图:

MainActivity.java

package com.example.myintent;import androidx.activity.result.ActivityResultCallback;
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContract;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;public class MainActivity extends AppCompatActivity {private Button btnLogin,btnReset,btnSum;private TextView textView;private EditText etUserName,etPassWord;private EditText etNumberOne,etNumberTwo;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);//获取视图中的组件btnLogin = findViewById(R.id.btn_login);btnReset = findViewById(R.id.btn_reset);btnSum = findViewById(R.id.btn_sum);textView =findViewById(R.id.tv_result);etUserName = findViewById(R.id.btn_user_name);etPassWord = findViewById(R.id.btn_pass_word);etNumberOne = findViewById(R.id.btn_number_one);etNumberTwo = findViewById(R.id.btn_number_two);//登录事件btnLogin.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {//信息认证if(etUserName.getText().toString().equals("admin") && etPassWord.getText().toString().equals("123456")){//创建意图 跳转页面 1
//                Intent intent = new Intent();
//                intent.setClass(MainActivity.this, HomeActivity.class);//创建意图 跳转页面 2Intent intent = new Intent(MainActivity.this,HomeActivity.class);//数据传递 1 Bundle
//                    Bundle bundle = new Bundle();
//                    bundle.putString("userName",etUserName.getText().toString());
//                    bundle.putInt("passWold", Integer.parseInt(etPassWord.getText().toString()));
//                    intent.putExtras(bundle);//数据传递2intent.putExtra("userName",etUserName.getText().toString());intent.putExtra("passWold",Integer.valueOf(etPassWord.getText().toString()));//跳转startActivity(intent);}else {//密码不正确Toast.makeText(MainActivity.this,"您输入的用户名或密码不正确!",Toast.LENGTH_SHORT).show();}}});//重置btnReset.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {//清空etUserName.setText("");etPassWord.setText("");}});//求和 事件 带返回结果的 意图跳转btnSum.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {// mGetContent.launch("1");//意图传递参数Intent intent = new Intent(MainActivity.this,HomeActivity.class);intent.putExtra("numberOne",etNumberOne.getText().toString());intent.putExtra("numberTwo",etNumberTwo.getText().toString());//跳转 带返回结果startActivityForResult(intent,100);}});}//返回响应方法@Overrideprotected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {super.onActivityResult(requestCode, resultCode, data);//响应回来的数据textView.setText("requestCode"+requestCode+"resultCode:"+resultCode+"data:"+data.getExtras().getString("sum"));}}

在layout目录下创建一个空白的Empty Views Activity,activity_home.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"tools:context=".HomeActivity"><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="跳转成功 获取到数据:"android:textSize="30sp"/><TextViewandroid:id="@+id/btn_home_conten"android:layout_width="wrap_content"android:layout_height="wrap_content"android:textColor="#ffff0000"android:textSize="30sp"/><TextViewandroid:text="两数之和是:"android:layout_width="wrap_content"android:layout_height="wrap_content"android:textSize="30sp"/><TextViewandroid:id="@+id/btn_home_sum"android:layout_width="match_parent"android:layout_height="wrap_content"android:textColor="#ffff0000"android:textSize="30sp"android:gravity="center"/>
</LinearLayout>

会自动创建相对应的Activity类  HomeActivity.java

package com.example.myintent;import androidx.appcompat.app.AppCompatActivity;import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TextView;public class HomeActivity extends AppCompatActivity {private TextView textView,textSum;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_home);textView = findViewById(R.id.btn_home_conten);textSum =findViewById(R.id.btn_home_sum);//获取意图Intent intent = this.getIntent();//获取传递过来的参数Bundle bundle = intent.getExtras();//获取数据String userName = bundle.getString("userName");int passWold = bundle.getInt("passWold");//        int numOne  = Integer.valueOf(bundle.getString("numberOne"));
//        int numOne = Integer.valueOf(getIntent().getStringExtra("numberOne"));int numOne = Integer.parseInt(getIntent().getStringExtra("numberOne"));int numTwo = Integer.parseInt(getIntent().getStringExtra("numberTwo"));//设置到textView中textView.setText(userName +"----"+ passWold);textSum.setText((numOne+numTwo)+"");//设置返回 响应码 和 结果Intent resIntent = new Intent();resIntent.putExtra("sum",(numOne+numTwo)+"");setResult(500,resIntent);}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/217532.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

knime 中没有column expressions,怎么下载

knime 中没有column expressions&#xff0c;怎么下载 1、打开view&#xff0c;然后找到knime hub&#xff0c;column expression 2、往里面拖动&#xff0c;就可以安装了 3、然后会出现重启&#xff0c;搜索就可以出现啦

Vue新手必学:Vue的使用和Vue脚手架详解

文章目录 引言第一部分&#xff1a;Vue的基本使用1.1 安装Vue1.2 创建Vue项目1.3 编写第一个Vue组件1.4 在主页面中使用组件1.5 运行Vue项目 第二部分&#xff1a;Vue脚手架的使用2.1 Vue脚手架是什么2.2 创建Vue项目2.3 项目结构2.4 运行项目2.5 插件和配置 第三部分&#xff…

Spring cloud - Feign

Feign的作用 Feign是Netflix公司开发的声明式web客户端组件&#xff0c;Spring对Feign做了无缝集成&#xff1a; Feign is a declarative web service client. It makes writing web service clients easier. To use Feign create an interface and annotate it. It has plugg…

Javascript每天一道算法题(十八)——矩阵置零-中等

文章目录 1、问题2、示例3、解决方法&#xff08;1&#xff09;方法1——标记数组 1、问题 给定一个 y x x 的矩阵&#xff0c;如果一个元素为 0 &#xff0c;则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 2、示例 示例 1&#xff1a; 输入&#xff1a;matrix [[…

Redis key的类型以及命令

系列文章目录 第一章 Java线程池技术应用 第二章 CountDownLatch和Semaphone的应用 第三章 Spring Cloud 简介 第四章 Spring Cloud Netflix 之 Eureka 第五章 Spring Cloud Netflix 之 Ribbon 第六章 Spring Cloud 之 OpenFeign 第七章 Spring Cloud 之 GateWay 第八章 Sprin…

NX二次开发UF_CURVE_ask_curve_turn_angle 函数介绍

文章作者&#xff1a;里海 来源网站&#xff1a;https://blog.csdn.net/WangPaiFeiXingYuan UF_CURVE_ask_curve_turn_angle Defined in: uf_curve.h int UF_CURVE_ask_curve_turn_angle(tag_t curve, double orientation [ 3 ] , double * angle ) overview 概述 Returns …

UI自动化(selenium+python)之元素定位的三种等待方式!

前言 在UI自动化过程中&#xff0c;常遇到元素未找到&#xff0c;代码报错的情况。这种情况下&#xff0c;需要用等待wait。 在selenium中可以用到三种等待方式即sleep,implicitly_wait,WebDriverWait 一、固定等待(sleep) 导入time模块&#xff0c;设定固定的等待时间 缺…

某瓜数据app Sign

文章目录 声明目标加密参数定位算法还原声明 本文章中所有内容仅供学习交流,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关,若有侵权,请私信我立即删除! 目标 之前也有写过pc端的飞瓜数据解密:JS逆向系列之某瓜数据解密 这次看一下某瓜数据app的达…

2016年11月10日 Go生态洞察:七年的Go语言旅程

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…

【2023传智杯】第六届传智杯程序设计挑战赛AB组-DEF题解题分析详解【JavaPythonC++解题笔记】

本文仅为【2023传智杯】第六届传智杯程序设计挑战赛-题目解题分析详解的解题个人笔记,个人解题分析记录。 本文包含:第六届传智杯程序设计挑战赛题目、解题思路分析、解题代码、解题代码详解 文章目录 一.前言二.比赛题目(AB俩组)D题题目E题题目F题题目三.解题代码D题解题思…

荆涛演唱歌曲《老板的孤独》:孤独中的坚韧与担当

歌手荆涛演唱的《老板的孤独》不仅是一首歌&#xff0c;更是一种情感的宣泄和表达。歌曲中表达了老板们在面对压力、孤独和困难时&#xff0c;依然坚持、积极向前的坚韧精神。每一句歌词都充满了对生活的深刻理解和感悟&#xff0c;以及对团队、家人的深深牵挂。 一、欣喜时要h…

SpectralGPT: Spectral Foundation Model 论文翻译2

遥感领域的通用大模型 2023.11.13在CVPR发表 原文地址&#xff1a;[2311.07113] SpectralGPT: Spectral Foundation Model (arxiv.org) 实验 ​ 在本节中&#xff0c;我们将严格评估我们的SpectralGPT模型的性能&#xff0c;并对其进行基准测试SOTA基础模型&#xff1a;ResN…