Android使用xml实现注册页面+Java代码

以下内容均来自本人的毕设原创,仅供参考

已经实现的注册页面

xml资源代码

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/activity_register"
    android:background="@drawable/bg14"
    android:layout_width="match_parent"
    android:layout_margin="16dp"
    android:layout_height="match_parent">

    <LinearLayout
        android:id="@+id/inputText"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="200dp"
        android:orientation="vertical">

        <EditText
            android:id="@+id/register_phone_text"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:textColor="@color/colorFont"
            android:inputType="phone"
            android:maxLength="11"
            android:hint="@string/phone_hint"
            android:textSize="25sp" />

        <EditText
        android:id="@+id/register_password_text"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:ems="10" android:textColor="@color/colorFont"
        android:maxLength="16"
        android:hint="@string/password_hint"
        android:inputType="textPassword"
        android:textSize="25sp" />
        <EditText
            android:id="@+id/confirm_password_text"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:ems="10"
            android:maxLength="16"
            android:hint="@string/confirm_password_hint"
            android:textColor="@color/colorFont"
            android:inputType="textPassword"
            android:textSize="25sp" />
    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/inputText">

        <Button
            android:id="@+id/register_register_button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="15dp"
            android:layout_marginLeft="50dp"
            android:background="@color/colorButton"
            android:text="@string/action_register"
            android:textSize="20dp"
            android:textColor="@color/colorFont"
            android:textAppearance="@style/TextAppearance.AppCompat" />
        <Button
            android:id="@+id/cancel_button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="15dp"
            android:layout_marginLeft="50dp"
            android:background="@color/colorButton"
            android:text="@string/action_back"
            android:textSize="20dp"
            android:textColor="@color/colorFont"
            android:textAppearance="@style/TextAppearance.AppCompat" />
    </LinearLayout>
</RelativeLayout>

注册页面Java代码


import android.app.AlertDialog;
import android.app.ProgressDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.AsyncTask;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v7.app.ActionBar;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

import com.xujun.busticketsystem.utils.GetPostUtil;
import com.xujun.busticketsystem.utils.MD5Utils;

import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import java.security.NoSuchAlgorithmException;

public class RegisterActivity extends AppCompatActivity {
    //定义账号,密码输入框
    private EditText mPhoneText;
    private EditText mPasswordText;
    private EditText mConfirmPasswordText;
    //定义注册、取消按钮
    private Button mRegisterButton;
    private Button mCancelButton;
    //提示框
    private ProgressDialog mDialog;

    private String params = "";//定义参数字符串

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_register);

        //创建组件
        mPhoneText = findViewById(R.id.register_phone_text);
        mPasswordText = findViewById(R.id.register_password_text);
        mConfirmPasswordText = findViewById(R.id.confirm_password_text);

        mRegisterButton = findViewById(R.id.register_register_button);
        mCancelButton = findViewById(R.id.cancel_button);

        //注册监听
        mRegisterButton.setOnClickListener(mOnClickListener);
        mCancelButton.setOnClickListener(mOnClickListener);
    }

    //点击事件
    View.OnClickListener mOnClickListener = new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            switch (v.getId()) {
                case R.id.register_register_button:
                    mDialog = new ProgressDialog(RegisterActivity.this);
                    mDialog.setTitle("正在注册...");
                    mDialog.setMessage("请稍后...");
                    mDialog.show();

                    register();
                    break;
                case R.id.cancel_button:
                    finish();
                    break;
                default:
                    break;
            }
        }
    };
    private void register(){
        String username = mPhoneText.getText().toString();
        String password = mPasswordText.getText().toString();
        String confirm = mConfirmPasswordText.getText().toString();

        //判断密码是否一致
        if (!password.equals(confirm)){
            Toast.makeText(RegisterActivity.this,"密码不一致",Toast.LENGTH_LONG).show();
            mDialog.dismiss();
            return;
        }
        //MD5密码加密
        try {
            password = MD5Utils.getMD5(password);
        } catch (NoSuchAlgorithmException e) {
            e.printStackTrace();
        }
        try {
            params = "username="+ URLEncoder.encode(username,"UTF-8") +"&password="+URLEncoder.encode(password,"UTF-8");
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }
        RegisterTask task = new RegisterTask();
        task.execute();
    }

    public class RegisterTask extends AsyncTask<Void,Void,Void> {
        @Override
        protected Void doInBackground(Void... voids) {
            //获得服务器返回数据
            String response = GetPostUtil.executeHttpPost("register", params);
            //更新UI
            showRegister(response);
            return null;
        }
    }
    private void showMessage(String message){
        mDialog.dismiss();
        AlertDialog.Builder builder = new AlertDialog.Builder(RegisterActivity.this);
        builder.setTitle("注册信息");
        builder.setMessage(message);
        builder.setCancelable(false);//禁用后退键取消
        builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {
                RegisterActivity.this.finish();
            }
        });
        builder.show();
    }
    private void showRegister(final String message){
        runOnUiThread(new Runnable() {
            @Override
            public void run() {
                showMessage(message);
            }
        });
    }
}

Android登录页面

后续更新中。。。

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值