Android开启新的界面获取新界面的返回值
发布日期:2021-06-30 21:21:34
浏览次数:3
分类:技术文章
本文共 3418 字,大约阅读时间需要 11 分钟。
开发步骤:
1.告诉系统 想打开新的界面并且想获取新界面的返回值
2. 将数据返回 并关闭自己
3. 实现onActivityResult() 获取响应值
MainActivity.java
package com.li.pageTransfer;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.widget.ImageView;import android.widget.TextView;public class MainActivity extends Activity { private ImageView mHandImage; private TextView mSex; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mHandImage=(ImageView)findViewById(R.id.handImage); mSex=(TextView)findViewById(R.id.setTextView); } //点击跟换头像 public void clickHandImage(View v){ Intent intent = new Intent(this,MyHandImage.class); //requestCode startActivityForResult(intent, 1); } //点击选择性别 public void clickSelectSex(View v){ Intent intent = new Intent(this,SetSex.class); startActivityForResult(intent, 2); } @Override //resultCode区分哪一个页面的传来的值 protected void onActivityResult(int requestCode, int resultCode, Intent data) { if(data!=null){ if(requestCode==1){ mHandImage.setImageResource(data.getIntExtra("image", 0)); } if(requestCode==2){ mSex.setText(data.getStringExtra("sex")); } } } }
activity_main.xml
MyHandImage.java
package com.li.pageTransfer;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.View;public class MyHandImage extends Activity implements android.view.View.OnClickListener{ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_my_hand_image); findViewById(R.id.e0).setOnClickListener(this); findViewById(R.id.e1).setOnClickListener(this); findViewById(R.id.e2).setOnClickListener(this); findViewById(R.id.e3).setOnClickListener(this); } @Override public void onClick(View v) { Intent data=new Intent(); switch (v.getId()) { case R.id.e0: data.putExtra("image", R.drawable.e0); break; case R.id.e1: data.putExtra("image", R.drawable.e1); break; case R.id.e2: data.putExtra("image", R.drawable.e2); break; case R.id.e3: data.putExtra("image", R.drawable.e3); break; } //resultCode是用来区分数据类型的 比如int 是0x001 boolean 0x002.... //setResult(resultCode, data); setResult(0, data); finish();//关闭该窗口 }}
activity_my_hand_image.xml
SetSex.java
package com.li.pageTransfer;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;public class SetSex extends Activity implements OnClickListener{ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_set_sex); findViewById(R.id.man).setOnClickListener(this); findViewById(R.id.woman).setOnClickListener(this); findViewById(R.id.nosex).setOnClickListener(this); } @Override public void onClick(View v) { Intent data = new Intent(); switch (v.getId()) { case R.id.man: data.putExtra("sex", "男"); break; case R.id.woman: data.putExtra("sex", "女"); break; case R.id.nosex: data.putExtra("sex", "未知"); break; } //resultCode是用来区分数据类型的 返回时不知道是什么类型就用resultCode来区分 比如int 是0x001 boolean 0x002.... //setResult(resultCode, data); setResult(0x001, data); finish();//关闭窗口 }}
activity_set_sex.xml
转载地址:https://liwangjiang.blog.csdn.net/article/details/79680592 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
做的很好,不错不错
[***.243.131.199]2024年04月12日 08时06分14秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
基础架构系列篇-系统centos7中docker安装分布式文件存储服务minio
2021-07-03
知识点记录-java判断系统是linux或windows
2021-07-03
知识点记录-springboot静态资源映射路径
2021-07-03
微服务springcloud2系列篇-配置与注册nacos组件
2021-07-03
用户权限设计-基于RBAC模型
2021-07-03
微服务springcloud2系列篇-网关GATEWAY跨域问题
2019-04-30
Java并发以及多线程基础
2019-04-30
软件质量的8个特性
2019-04-30
应届渣渣前端的艰难求职之路
2019-04-30
2021年不可错过的17种JS优化技巧(一)
2019-04-30
月薪15~20k的前端面试问什么?
2019-04-30
在 Vue 中用 Axios 异步请求API
2019-04-30
mysql——介绍及安装与基本用法
2019-04-30
MYSQL——事务操作+视图+存储引擎
2019-04-30
Mysql——完全备份+增量备份+备份恢复
2019-04-30
MySQL进阶查询(SELECT 语句高级用法)
2019-04-30
Mysql 之主从复制
2019-04-30
squid代理介绍----ACL控制应用+sarg日志分析+反向代理
2019-04-30
JavaScript原生开关灯效果
2019-04-30