android程序一个注册,然后到设置兴趣爱好,出生日期,然后把所有信息显示在另一个页面的程序

本文主要是介绍android程序一个注册,然后到设置兴趣爱好,出生日期,然后把所有信息显示在另一个页面的程序,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

这个程序要达到的效果简图如下图

这里写图片描述

第一个页面


public class MainActivity extends Activity implements OnClickListener,OnCheckedChangeListener {EditText username, password;RadioGroup sex;Button btn_register, btn_cancel;UserBean user;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);user = new UserBean();initView();}private void initView() {username = (EditText) findViewById(R.id.username);password = (EditText) findViewById(R.id.password);sex = (RadioGroup) findViewById(R.id.sex);btn_register = (Button) findViewById(R.id.btn_register);btn_cancel = (Button) findViewById(R.id.btn_cancel);btn_register.setOnClickListener(this);btn_cancel.setOnClickListener(this);sex.setOnCheckedChangeListener(this);// 给定一个初始状态sex.check(R.id.boy);}@Overridepublic void onClick(View v) {switch (v.getId()) {case R.id.btn_cancel:// 关闭finish();break;case R.id.btn_register:String uname = username.getText().toString();String pwd = password.getText().toString();// 非空if (TextUtils.isEmpty(uname) || TextUtils.isEmpty(pwd)) {Toast.makeText(this, "用户名或密码不能为空", Toast.LENGTH_SHORT).show();return;} else {user.setUsername(uname);user.setPassword(pwd);// 跳转并且携带数据Intent intent = new Intent(this, SetActivity.class);intent.putExtra("user", user);startActivity(intent);}break;default:break;}}@Overridepublic void onCheckedChanged(RadioGroup group, int checkedId) {// 状态改变时switch (checkedId) {case R.id.boy:user.setSex('男');break;case R.id.gril:user.setSex('女');break;}}
}

第一个页面的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"android:padding="20dp"tools:context="com.example.lesson4_demo.MainActivity" ><EditText
        android:id="@+id/username"android:layout_width="match_parent"android:layout_height="wrap_content"android:hint="请输入用户名" /><EditText
        android:id="@+id/password"android:layout_width="match_parent"android:layout_height="wrap_content"android:hint="请输入密码" /><RadioGroup
        android:id="@+id/sex"android:layout_width="match_parent"android:layout_height="wrap_content"android:gravity="center"android:orientation="horizontal" ><RadioButton
            android:id="@+id/boy"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:gravity="center"android:padding="10dp"android:text="男" /><RadioButton
            android:id="@+id/gril"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:gravity="center"android:padding="10dp"android:text="女" /></RadioGroup><LinearLayout
        android:layout_width="match_parent"android:layout_height="wrap_content"android:gravity="center"android:orientation="horizontal" ><Button
            android:id="@+id/btn_register"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="注册" /><Button
            android:id="@+id/btn_cancel"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="取消" /></LinearLayout></LinearLayout>

新建user类拿来装信息

public class UserBean implements Serializable {/*** */private static final long serialVersionUID = 1123123123L;@Overridepublic String toString() {return "UserBean [username=" + username + ", password=" + password+ ", sex=" + sex + ", hobbit=" + hobbit + ", birthday="+ birthday + "]";}String username;String password;char sex;String hobbit;String birthday;public UserBean() {super();}public UserBean(String username, String password, char sex, String hobbit,String birthday) {super();this.username = username;this.password = password;this.sex = sex;this.hobbit = hobbit;this.birthday = birthday;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}public char getSex() {return sex;}public void setSex(char sex) {this.sex = sex;}public String getHobbit() {return hobbit;}public void setHobbit(String hobbit) {this.hobbit = hobbit;}public String getBirthday() {return birthday;}public void setBirthday(String birthday) {this.birthday = birthday;}}

第二个页面 选择爱好和出生日期

public class SetActivity extends Activity implements OnCheckedChangeListener,OnClickListener {CheckBox cb_music, cb_lol, cb_swing;DatePicker datePicker;Button btn_finish;List<String> list = new ArrayList<String>();UserBean user;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_set);initView();user = (UserBean) getIntent().getSerializableExtra("user");}private void initView() {cb_music = (CheckBox) findViewById(R.id.cb_music);cb_lol = (CheckBox) findViewById(R.id.cb_lol);cb_swing = (CheckBox) findViewById(R.id.cb_swing);cb_music.setOnCheckedChangeListener(this);cb_lol.setOnCheckedChangeListener(this);cb_swing.setOnCheckedChangeListener(this);datePicker = (DatePicker) findViewById(R.id.datepicker);btn_finish = (Button) findViewById(R.id.btn_finish);// 初始化时间Calendar calendar = Calendar.getInstance();datePicker.init(calendar.get(Calendar.YEAR),calendar.get(Calendar.MONTH),calendar.get(Calendar.DAY_OF_MONTH),new OnDateChangedListener() {@Overridepublic void onDateChanged(DatePicker view, int year,int monthOfYear, int dayOfMonth) {user.setBirthday(year + "-" + (monthOfYear + 1) + "-"+ dayOfMonth);}});btn_finish.setOnClickListener(this);}@Overridepublic void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {switch (buttonView.getId()) {case R.id.cb_music:if (isChecked)list.add("音乐");elselist.remove("音乐");break;case R.id.cb_lol:if (isChecked)list.add("英雄联盟");elselist.remove("英雄联盟");break;case R.id.cb_swing:if (isChecked)list.add("游泳");elselist.remove("游泳");break;}}@Overridepublic void onClick(View v) {// 将爱好设置进去if (list.size() > 0) {StringBuffer sb = new StringBuffer();for (String str : list) {sb.append(str + " ");}user.setHobbit(sb.toString());}// 跳转Intent intent = new Intent(this, ResultActivity.class);intent.putExtra("user", user);startActivity(intent);}}

第二个页面的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" ><Button
        android:id="@+id/btn_finish"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="完成" /><TextView
        android:layout_width="match_parent"android:layout_height="wrap_content"android:background="#80cccccc"android:padding="5dp"android:text="兴趣爱好" /><CheckBox
        android:id="@+id/cb_music"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="音乐" /><CheckBox
        android:id="@+id/cb_lol"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="LOL" /><CheckBox
        android:id="@+id/cb_swing"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="游泳" /><TextView
        android:layout_width="match_parent"android:layout_height="wrap_content"android:background="#80cccccc"android:padding="5dp"android:text="生日" /><DatePicker
        android:id="@+id/datepicker"android:layout_width="match_parent"android:layout_height="match_parent" /></LinearLayout>

最后一个显示的页面

public class ResultActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);TextView tv = new TextView(this);setContentView(tv);UserBean user = (UserBean) getIntent().getSerializableExtra("user");tv.setText(user.toString());}
}

这篇关于android程序一个注册,然后到设置兴趣爱好,出生日期,然后把所有信息显示在另一个页面的程序的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/334414

相关文章

Python设置Cookie永不超时的详细指南

《Python设置Cookie永不超时的详细指南》Cookie是一种存储在用户浏览器中的小型数据片段,用于记录用户的登录状态、偏好设置等信息,下面小编就来和大家详细讲讲Python如何设置Cookie... 目录一、Cookie的作用与重要性二、Cookie过期的原因三、实现Cookie永不超时的方法(一)

浏览器插件cursor实现自动注册、续杯的详细过程

《浏览器插件cursor实现自动注册、续杯的详细过程》Cursor简易注册助手脚本通过自动化邮箱填写和验证码获取流程,大大简化了Cursor的注册过程,它不仅提高了注册效率,还通过友好的用户界面和详细... 目录前言功能概述使用方法安装脚本使用流程邮箱输入页面验证码页面实战演示技术实现核心功能实现1. 随机

SpringSecurity显示用户账号已被锁定的原因及解决方案

《SpringSecurity显示用户账号已被锁定的原因及解决方案》SpringSecurity中用户账号被锁定问题源于UserDetails接口方法返回值错误,解决方案是修正isAccountNon... 目录SpringSecurity显示用户账号已被锁定的解决方案1.问题出现前的工作2.问题出现原因各

Qt 设置软件版本信息的实现

《Qt设置软件版本信息的实现》本文介绍了Qt项目中设置版本信息的三种常用方法,包括.pro文件和version.rc配置、CMakeLists.txt与version.h.in结合,具有一定的参考... 目录在运行程序期间设置版本信息可以参考VS在 QT 中设置软件版本信息的几种方法方法一:通过 .pro

Android DataBinding 与 MVVM使用详解

《AndroidDataBinding与MVVM使用详解》本文介绍AndroidDataBinding库,其通过绑定UI组件与数据源实现自动更新,支持双向绑定和逻辑运算,减少模板代码,结合MV... 目录一、DataBinding 核心概念二、配置与基础使用1. 启用 DataBinding 2. 基础布局

Android ViewBinding使用流程

《AndroidViewBinding使用流程》AndroidViewBinding是Jetpack组件,替代findViewById,提供类型安全、空安全和编译时检查,代码简洁且性能优化,相比Da... 目录一、核心概念二、ViewBinding优点三、使用流程1. 启用 ViewBinding (模块级

Python打印对象所有属性和值的方法小结

《Python打印对象所有属性和值的方法小结》在Python开发过程中,调试代码时经常需要查看对象的当前状态,也就是对象的所有属性和对应的值,然而,Python并没有像PHP的print_r那样直接提... 目录python中打印对象所有属性和值的方法实现步骤1. 使用vars()和pprint()2. 使

PostgreSQL 默认隔离级别的设置

《PostgreSQL默认隔离级别的设置》PostgreSQL的默认事务隔离级别是读已提交,这是其事务处理系统的基础行为模式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价... 目录一 默认隔离级别概述1.1 默认设置1.2 各版本一致性二 读已提交的特性2.1 行为特征2.2

一文详解MySQL如何设置自动备份任务

《一文详解MySQL如何设置自动备份任务》设置自动备份任务可以确保你的数据库定期备份,防止数据丢失,下面我们就来详细介绍一下如何使用Bash脚本和Cron任务在Linux系统上设置MySQL数据库的自... 目录1. 编写备份脚本1.1 创建并编辑备份脚本1.2 给予脚本执行权限2. 设置 Cron 任务2

mtu设置多少网速最快? 路由器MTU设置最佳网速的技巧

《mtu设置多少网速最快?路由器MTU设置最佳网速的技巧》mtu设置多少网速最快?想要通过设置路由器mtu获得最佳网速,该怎么设置呢?下面我们就来看看路由器MTU设置最佳网速的技巧... 答:1500 MTU值指的是在网络传输中数据包的最大值,合理的设置MTU 值可以让网络更快!mtu设置可以优化不同的网