功能实现效果如下图:
第一步:布局输入的界面,在activity_main.xml中,代码如下:
<ScrollView 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">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/name_input"
android:textSize="20sp"/>
<!--姓名框 -->
<EditText
android:id="@+id/name"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:inputType="text" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/sex_input"
android:textSize="20sp"/>
<!--选择性别的单项选择按钮 -->
<RadioGroup
android:id="@+id/radio"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:checkedButton="@+id/boy"
android:orientation="horizontal" >
<RadioButton
android:id="@+id/boy"
android:text="@string/boy" />
<RadioButton
android:id="@+id/girl"
android:text="@string/girl" />
</RadioGroup>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/birthday"
android:textSize="20sp"/>
<!--日期选择器 -->
<DatePicker
android:id="@+id/date"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/habit"
android:textSize="20sp"/>
<!--选择爱好的复选框 -->
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/movie"
android:text="@string/movie"/>
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/star"
android:text="@string/star"/>
<!--提交按钮 -->
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/submit"
android:onClick="doSubmit"
android:text="@string/submit" />
</LinearLayout>
</ScrollView>
第二步:接下来编写MainActivity.java中的方法,代码如下:
package com.bzu.register.activity;
import android.os.Bundle;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.DatePicker;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.Toast;
import android.support.v4.app.NavUtils;
public class MainActivity extends Activity {
//定义性别、爱好、姓名。生日和最后显示信息
String sex,habit1="",habit2="";
String name,birthday,message;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void doSubmit(View v){
/*
* 获取页面上内容
*/
EditText text=(EditText) this.findViewById(R.id.name);
RadioButton boy=(RadioButton) this.findViewById(R.id.boy);
RadioButton girl=(RadioButton) this.findViewById(R.id.girl);
DatePicker datePicker = (DatePicker) findViewById(R.id.date);
CheckBox movie=(CheckBox) this.findViewById(R.id.movie);
CheckBox star=(CheckBox) this.findViewById(R.id.star);
String day = String.valueOf(datePicker.getDayOfMonth());
String month = String.valueOf(datePicker.getMonth() + 1);
String year = String.valueOf(datePicker.getYear());
birthday = year.concat("年").concat(month).concat("月").concat(day)
.concat("日");
//datePicker.init(1985, 8, 6, null);
name=text.getText().toString();
//选择性别,并将转成字符串
if(boy.isChecked()){
sex=boy.getText().toString();
}else{
sex=girl.getText().toString();
}
//选择兴趣爱好,并将转成字符串
if(movie.isChecked()){
habit1=movie.getText().toString();
}
if(star.isChecked()){
habit2=star.getText().toString();
}
message = "注册成功!\n你的姓名:" + name + "\n您的性别:" + sex + "\n您的生日:"
+ birthday+ "\n您的爱好:" + habit1 + habit2;
//提示框
//Toast.makeText(MainActivity.this, message, Toast.LENGTH_LONG).show();
//弹出对话框
showDialog(1);
}
/*
* 建立对话框
*/
public Dialog onCreateDialog(int id){
switch(id){
case 1:
return buildDialog(MainActivity.this);
}
return null;
}
/*
* bulidDialog方法
*/
private Dialog buildDialog(Context context){
AlertDialog.Builder bulider=new AlertDialog.Builder(context);
bulider.setMessage(message);
return bulider.create();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
}
其他:在strings.xml中的代码如下:
<resources>
<string name="app_name">用户注册</string>
<string name="name_input">请输入您的姓名:</string>
<string name="sex_input">请输入您的性别:</string>
<string name="boy">男</string>
<string name="girl">女</string>
<string name="birthday">请输入您的生日:</string>
<string name="habit">请选择您的兴趣爱好:</string>
<string name="movie">看电影</string>
<string name="basketball">打篮球</string>
<string name="star">追星</string>
<string name="submit">提交</string>
<string name="menu_settings">Settings</string>
<string name="title_activity_main">用户注册</string>
</resources>