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打印对象所有属性和值的方法小结

《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设置可以优化不同的网

Python pip下载包及所有依赖到指定文件夹的步骤说明

《Pythonpip下载包及所有依赖到指定文件夹的步骤说明》为了方便开发和部署,我们常常需要将Python项目所依赖的第三方包导出到本地文件夹中,:本文主要介绍Pythonpip下载包及所有依... 目录步骤说明命令格式示例参数说明离线安装方法注意事项总结要使用pip下载包及其所有依赖到指定文件夹,请按照以

MySQL 设置AUTO_INCREMENT 无效的问题解决

《MySQL设置AUTO_INCREMENT无效的问题解决》本文主要介绍了MySQL设置AUTO_INCREMENT无效的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参... 目录快速设置mysql的auto_increment参数一、修改 AUTO_INCREMENT 的值。

详解Linux中常见环境变量的特点与设置

《详解Linux中常见环境变量的特点与设置》环境变量是操作系统和用户设置的一些动态键值对,为运行的程序提供配置信息,理解环境变量对于系统管理、软件开发都很重要,下面小编就为大家详细介绍一下吧... 目录前言一、环境变量的概念二、常见的环境变量三、环境变量特点及其相关指令3.1 环境变量的全局性3.2、环境变

安装centos8设置基础软件仓库时出错的解决方案

《安装centos8设置基础软件仓库时出错的解决方案》:本文主要介绍安装centos8设置基础软件仓库时出错的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录安装Centos8设置基础软件仓库时出错版本 8版本 8.2.200android4版本 javas

python编写朋克风格的天气查询程序

《python编写朋克风格的天气查询程序》这篇文章主要为大家详细介绍了一个基于Python的桌面应用程序,使用了tkinter库来创建图形用户界面并通过requests库调用Open-MeteoAPI... 目录工具介绍工具使用说明python脚本内容如何运行脚本工具介绍这个天气查询工具是一个基于 Pyt

Ubuntu设置程序开机自启动的操作步骤

《Ubuntu设置程序开机自启动的操作步骤》在部署程序到边缘端时,我们总希望可以通电即启动我们写好的程序,本篇博客用以记录如何在ubuntu开机执行某条命令或者某个可执行程序,需要的朋友可以参考下... 目录1、概述2、图形界面设置3、设置为Systemd服务1、概述测试环境:Ubuntu22.04 带图