Android 人品计算器
来源:互联网 发布:163邮箱注册软件 编辑:程序博客网 时间:2024/06/05 17:31
public class MainActivity extends AppCompatActivity { private EditText et_name; private RadioGroup rg_group; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); et_name = (EditText) findViewById(R.id.et_name); rg_group = (RadioGroup) findViewById(R.id.radioGroup1); } //点击按钮 实现计算人品 跳转到ResultActivity页面 public void click(View v) { //1 获取用户名 String name = et_name.getText().toString().trim(); //2 判断是否为空 if (TextUtils.isEmpty(name)) { Toast.makeText(getApplicationContext(), "请输入姓名", Toast.LENGTH_SHORT).show(); return; } //3 判断用户选择的性别 int radioButtonId = rg_group.getCheckedRadioButtonId(); int sex = 0; switch (radioButtonId) { case R.id.rb_male: // 代表选择的是男 sex = 1; break; case R.id.rb_female: // 代表选择的是女 sex = 2; break; case R.id._rb_other: // 代表选择的是人妖 sex = 3; break; } if (sex == 0) { Toast.makeText(getApplicationContext(), "请选择性别", Toast.LENGTH_SHORT).show(); return; } //4 跳转到ResultActivity页面 用显示意图跳转 Intent intent = new Intent(this, ResultActivity.class); // 传递姓名 intent.putExtra("name", name); // 传递性别 intent.putExtra("sex", sex); startActivity(intent); }}
public class ResultActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // 加载布局 setContentView(R.layout.activity_result); 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 获取MainActivity 传递过来的数据 Intent intent = getIntent(); //获取开启此Activity的意图对象 //3 获取name 和 sex 的值 小技巧:传递的是什么数据类型,这边就按照传递的数据类型取 String name = intent.getStringExtra("name"); int sex = intent.getIntExtra("sex", 0); //4 根据name和sex 显示数据 tv_name.setText(name); byte[] bytes = null; //5 显示性别 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 (UnsupportedEncodingException e) { e.printStackTrace(); } //6 计算人品结果 市面上大多数应用采用的是随机数 int total = 0; for (byte b : bytes) { int number = b&0xff; // 1111 1111 0x是十六进制的标志 ff是 255 total+=number; Log.d("mylog", "onCreate: total= " + total); } //获取得分 int score = Math.abs(total)%100; if (score > 90) { tv_result.setText("您的人品非常好"); } else if (score > 80) { tv_result.setText("您的人品还可以"); } else if (score > 60) { tv_result.setText("您的人品刚及格"); } else { tv_result.setText("您的人品太次了"); } }}
<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="com.example.a41_character_calculator.MainActivity"> <EditText android:id="@+id/et_name" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="请输入姓名"/> <RadioGroup android:id="@+id/radioGroup1" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <RadioButton android:id="@+id/rb_male" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="男"/> <RadioButton android:id="@+id/rb_female" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="25dp" android:text="女"/> <RadioButton android:id="@+id/_rb_other" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="25dp" android:text="人妖"/> </RadioGroup> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="click" android:text="计算"/></LinearLayout>
0 0
- Android初级教程人品计算器
- Android简单人品计算器
- android人品计算器小案列
- Android 人品计算器
- Android之人品计算器教程
- ~~~~~~~~~~~~~人品计算器~~~~~~~~~~~~~~~~~~~~~~~
- 人品计算器
- 人品计算器
- 人品计算器
- 人品计算器
- 人品计算器
- 人品计算器
- 人品计算器
- 人品计算器
- 人品计算器
- 人品计算器
- 人品计算器
- 人品计算器
- 用python创建桌面应用(二)
- SVN简单概述
- (ZT)clear icon cache
- 颜色矩原理及C++实现
- 集合框架-泛型接口的概述和使用
- Android 人品计算器
- 第三十九讲项目一 判断n是否是完数
- 电商秒杀系统设计分析
- PPTP源码流程分析图
- EL表达式中获取list长度
- Linux下SD卡驱动移植
- netBeans如何连接mysql
- F5安装配置VE版本
- 使用eclipse打开已有项目