一、项目目录结构

二、activity_main.xml界面

三、activity_main.xml代码

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"tools:context="com.zgs.ActivityPassData.MainActivity" ><EditTextandroid:id="@+id/et_name"android:layout_width="match_parent"android:layout_height="wrap_content"android:hint="请输入姓名" /><RadioGroupandroid:id="@+id/rg_group"android:layout_width="match_parent"android:layout_height="wrap_content"android:orientation="horizontal" ><RadioButtonandroid:id="@+id/rb_male"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="男" /><RadioButtonandroid:id="@+id/rb_female"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_marginLeft="20dp"android:text="女" /><RadioButtonandroid:id="@+id/rb_other"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_marginLeft="20dp"android:text="人妖" /></RadioGroup><Buttonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:onClick="click"android:text="计算" /></LinearLayout>

四、MainActivity.java代码

package com.zgs.ActivityPassData;import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.EditText;
import android.widget.RadioGroup;
import android.widget.Toast;public class MainActivity extends Activity {private EditText et_name;private RadioGroup rg_group;private Context mContext;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);mContext=this;//(1)找到我们关心的控件et_name = (EditText) findViewById(R.id.et_name);rg_group = (RadioGroup) findViewById(R.id.rg_group);}//点击按钮 获取数据 跳转到ResultActivity页面 public void click(View v) {//[1]获取用户名String name = et_name.getText().toString().trim();if (TextUtils.isEmpty(name)) {Toast.makeText(getApplicationContext(), "用户名不能为空", Toast.LENGTH_LONG).show();return;}//[2]判断选中性别int checkedRadioButtonId = rg_group.getCheckedRadioButtonId();//[3]判断一下具体选中的性别 int sex = 0; //默认值为0switch (checkedRadioButtonId) {case R.id.rb_male:   //选中的是男sex = 1;break;case R.id.rb_female: //选中的是女sex = 2;break;case R.id.rb_other: //代表选中的是人妖sex = 3;break;}//[4]判断性别if (sex == 0) {Toast.makeText(getApplicationContext(), "亲 请选择性别 ", 0).show();return;}//[5] 跳转到resutActivity页面  显示意图Intent intent = new Intent(mContext,ResultActivity.class);//[5.1]要把name 和 sex 传递到结果页面  底层mapintent.putExtra("name", name);intent.putExtra("sex", sex);//[6]开启ActivitystartActivity(intent);}}

五、activity_result.xml界面

六、activity_result.xml代码

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical" ><TextViewandroid:id="@+id/tv_name"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="张三" /><TextViewandroid:id="@+id/tv_sex"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="男" /><TextViewandroid:id="@+id/tv_result"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="您的人品非常好 " /></LinearLayout>

七、ResultActivity.java代码

package com.zgs.ActivityPassData;import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TextView;public class ResultActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);//加载页面setContentView(R.layout.activity_result);// [1]找到我们关心的控件TextView tv_name = (TextView) findViewById(R.id.tv_name);TextView tv_sex = (TextView) findViewById(R.id.tv_sex);TextView tv_result = (TextView) findViewById(R.id.tv_result);// [2]获取开启此Activity的意图对象Intent intent = getIntent();// [3]获取我们携带过来的数据 取出性别和name 传递的是什么样的数据类型 你在取的时候String name = intent.getStringExtra("name");// 获取nameint sex = intent.getIntExtra("sex", 0);// [4]把数据显示到控件上tv_name.setText(name); // 显示姓名// [5]显示性别byte[] bytes = null;try {switch (sex) {case 1: // 代表男tv_sex.setText("男");bytes = name.getBytes("gbk");break;case 2:tv_sex.setText("女");bytes = name.getBytes("utf-8");break;case 3:tv_sex.setText("人妖");bytes= name.getBytes("iso-8859-1");break;}} catch (Exception e) {e.printStackTrace();}//[6]根据我们输入的姓名和性别 来计算人品得分  根据得分显示结果  int  total = 0;for (byte b : bytes) {     //0001 1000int number =b&0xff;    //1111 1111total+=number;}//算出得分 int score = Math.abs(total)%100;if (score >90) {tv_result.setText("您的人品非常好");}else if (score >70) {tv_result.setText("有你这样的人品算是不错了..");}else if (score >60) {tv_result.setText("您的人品刚刚及格");}else{tv_result.setText("您的人品不及格....");}}}

八、AndroidManifest.xml代码

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"package="com.zgs.ActivityPassData"android:versionCode="1"android:versionName="1.0" ><uses-sdkandroid:minSdkVersion="16"android:targetSdkVersion="22" /><applicationandroid:allowBackup="true"android:icon="@drawable/ic_launcher"android:label="@string/app_name"android:theme="@style/AppTheme" ><activityandroid:name=".MainActivity"android:label="@string/app_name" ><intent-filter><action android:name="android.intent.action.MAIN" /><category android:name="android.intent.category.LAUNCHER" /></intent-filter></activity><!--配置resultActivity页面   --><activity android:name="com.zgs.ActivityPassData.ResultActivity"></activity></application></manifest>

九、 操作演示

十、源码下载

activity数据传递_人品计算器 提取码:59hj

activity间数据传递实例_人品计算器相关推荐

  1. Android零基础入门第83节:Activity间数据传递方法汇总

    2019独角兽企业重金招聘Python工程师标准>>> 在Activity间传递的数据一般比较简单,但是有时候实际开发中也会传一些比较复杂的数据,本节一起来学习更多Activity间 ...

  2. 【android-tips】Activity间数据传递之Bundle和SharedPreferences

    (转载请注明出处:http://blog.csdn.net/buptgshengod) 1.介绍    对于初学者android不同activity间的数据传输一直是一个难题,主要的解决方法主要有两种 ...

  3. 页面url带参数_微信小程序云开发教程微信小程序的JS高级页面间数据传递

    同学们大家好,我是小伊同学,上一节课我们讲解了全局数据的读写方法,那么在页面间同样需要数据交互,今天我们就来学习这部分内容. 在微信小程序中,我们常常需要将数据在页面之间进行传递,比如用户的身份信息, ...

  4. 解析activity之间数据传递方法的详解

    转自:http://www.jb51.net/article/37227.htm 本篇文章是对activity之间数据传递的方法进行了详细的分析介绍,需要的朋友参考下 1  基于消息的通信机制 Int ...

  5. asp.net页面间数据传递(总结篇)

    asp.net页面间数据传递(总结篇) 1. Get(即使用QueryString显式传递)      方式:在url后面跟参数.      特点:简单.方便.      缺点:字符串长度最长为255 ...

  6. 三、Vue(组件、组件间数据传递、slot内容分发、vue-router路由、单文件组件、vue-cli脚手架 )

    一. 组件component 1. 什么是组件?     组件(Component)是 Vue.js 最强大的功能之一.组件可以扩展 HTML 元素,封装可重用的代码     组件是自定义元素(对象) ...

  7. 进程间数据传递:Queue,Pipe 进程间数据共享:Manager

    进程间数据传递:Queue,Pipe 进程间数据共享:Manager 1.使用multiprocessing模块的Queue实现数据传递 ''' 进程间通讯:Queue,用法跟线程里的Queue一样, ...

  8. ASP.NET页面间数据传递的方法

    本文我们将讨论的是ASP.NET页面间数据传递的几种方法,对此希望能帮助大家正确的理解ASP.NET页面间数据传递的用处以及便利性. 0.引言 Web页面是无状态的, 服务器对每一次请求都认为来自不同 ...

  9. ASP.NET页面间数据传递的几种方法

    1.ASP.NET页面间数据传递的各种方法和分析 1.1 使用Querystring 方法 QueryString 也叫查询字符串, 这种方法将要传递的数据附加在网页地址(URL)后面进行传递.如页面 ...

最新文章

  1. 探索JAVA并发 - 悲观锁和乐观锁
  2. flask_sqlalchemy 多对多重复插入解决办法
  3. jasonrpcbridge
  4. 基于cobbler实现自动安装系统
  5. C#上位机软件串口数据接收用Invoke(同步)和BeginInvoke(异步)的区别
  6. 200 行代码实现 2048 游戏
  7. 神策游戏解决方案:赋能游戏产业精品化研运升级
  8. [Hands On ML] 4. 训练模型
  9. java - 根据条件求对应数字
  10. 互联网晚报 | 8月28日 星期六 | 我国网民规模超10亿;vivo首款自研影像芯片下月首发;同程艺龙拟改名为同程旅行...
  11. .netcore发布时指定服务器的系统类型
  12. 开源,免费,跨平台——白鹭引擎(Egret Engine)
  13. 洛谷P2732 商店购物 Shopping Offers
  14. RDD DataFrame DataSet 区别和转换
  15. web前端实训day06——学子商城登录页面实现
  16. 捷安四方聚合支付系统功能和优势的简介介绍?
  17. 微信小程序php签到功能,微信小程序签到功能
  18. 移动设备管理存在哪些威胁?
  19. 【报表福利大放送】100余套报表模板免费下
  20. MATLAB图像分割的GUI设计

热门文章

  1. mos管实现主副电源自动切换电路,并且“零”压降,静态电流20uA
  2. 成为一栈式数据服务生态: TiDB 5.0 HTAP 架构设计与成为场景解
  3. FFmpeg进阶: 音频滤镜大全
  4. HDU 5066 Harry And Physical Teacher(物理题)
  5. Openwrt虚拟WAN口叠加网速
  6. 算法很美——数学问题
  7. a+1、a+1、*(a+1)、*(a+1)、*(*(a+1))的区别
  8. 著名数学家 Michael Atiyah去世,去年九月声称证明黎曼猜想...
  9. 地震信号的一些基本概念
  10. paypal订单捕获java,paypal获取交易订单信息api(python实现)