簡單實現註冊成功,彈出對話框

功能實現效果如下圖:

第一步:佈局輸入的界面,在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>


 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章