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

相关文章

通过React实现页面的无限滚动效果

《通过React实现页面的无限滚动效果》今天我们来聊聊无限滚动这个现代Web开发中不可或缺的技术,无论你是刷微博、逛知乎还是看脚本,无限滚动都已经渗透到我们日常的浏览体验中,那么,如何优雅地实现它呢?... 目录1. 早期的解决方案2. 交叉观察者:IntersectionObserver2.1 Inter

java程序远程debug原理与配置全过程

《java程序远程debug原理与配置全过程》文章介绍了Java远程调试的JPDA体系,包含JVMTI监控JVM、JDWP传输调试命令、JDI提供调试接口,通过-Xdebug、-Xrunjdwp参数配... 目录背景组成模块间联系IBM对三个模块的详细介绍编程使用总结背景日常工作中,每个程序员都会遇到bu

C#自动化实现检测并删除PDF文件中的空白页面

《C#自动化实现检测并删除PDF文件中的空白页面》PDF文档在日常工作和生活中扮演着重要的角色,本文将深入探讨如何使用C#编程语言,结合强大的PDF处理库,自动化地检测并删除PDF文件中的空白页面,感... 目录理解PDF空白页的定义与挑战引入Spire.PDF for .NET库核心实现:检测并删除空白页

uni-app小程序项目中实现前端图片压缩实现方式(附详细代码)

《uni-app小程序项目中实现前端图片压缩实现方式(附详细代码)》在uni-app开发中,文件上传和图片处理是很常见的需求,但也经常会遇到各种问题,下面:本文主要介绍uni-app小程序项目中实... 目录方式一:使用<canvas>实现图片压缩(推荐,兼容性好)示例代码(小程序平台):方式二:使用uni

Java实现为PDF设置背景色和背景图片

《Java实现为PDF设置背景色和背景图片》在日常的文档处理中,PDF格式因其稳定性和跨平台兼容性而广受欢迎,本文将深入探讨如何利用Spire.PDFforJava库,以简洁高效的方式为你的PDF文档... 目录库介绍与安装步骤Java 给 PDF 设置背景颜色Java 给 PDF 设置背景图片总结在日常的

C#中通过Response.Headers设置自定义参数的代码示例

《C#中通过Response.Headers设置自定义参数的代码示例》:本文主要介绍C#中通过Response.Headers设置自定义响应头的方法,涵盖基础添加、安全校验、生产实践及调试技巧,强... 目录一、基础设置方法1. 直接添加自定义头2. 批量设置模式二、高级配置技巧1. 安全校验机制2. 类型

C#实现SHP文件读取与地图显示的完整教程

《C#实现SHP文件读取与地图显示的完整教程》在地理信息系统(GIS)开发中,SHP文件是一种常见的矢量数据格式,本文将详细介绍如何使用C#读取SHP文件并实现地图显示功能,包括坐标转换、图形渲染、平... 目录概述功能特点核心代码解析1. 文件读取与初始化2. 坐标转换3. 图形绘制4. 地图交互功能缩放

python库pydantic数据验证和设置管理库的用途

《python库pydantic数据验证和设置管理库的用途》pydantic是一个用于数据验证和设置管理的Python库,它主要利用Python类型注解来定义数据模型的结构和验证规则,本文给大家介绍p... 目录主要特点和用途:Field数值验证参数总结pydantic 是一个让你能够 confidentl

linux查找java项目日志查找报错信息方式

《linux查找java项目日志查找报错信息方式》日志查找定位步骤:进入项目,用tail-f实时跟踪日志,tail-n1000查看末尾1000行,grep搜索关键词或时间,vim内精准查找并高亮定位,... 目录日志查找定位在当前文件里找到报错消息总结日志查找定位1.cd 进入项目2.正常日志 和错误日

Java利用Spire.XLS for Java设置Excel表格边框

《Java利用Spire.XLSforJava设置Excel表格边框》在日常的业务报表和数据处理中,Excel表格的美观性和可读性至关重要,本文将深入探讨如何利用Spire.XLSforJava库... 目录Spire.XLS for Java 简介与安装Maven 依赖配置手动安装 JAR 包核心API介