android实现注册登录程序

作者:被遗忘的秋天 时间:2021-06-28 00:38:44 

本文实例为大家分享了android实现注册登录程序的具体代码,供大家参考,具体内容如下

注册页面:

user_register.xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
    android:background="@drawable/bg_01">"
    
      <TextView 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="注册"
        android:textSize="22dip"
        android:textColor="#FFFFFF"
        android:paddingLeft="140dip"
        android:paddingRight="50dip"
        android:paddingTop="10dip"
        android:background="@drawable/topbg"
        />
    "
    <EditText 
        android:id="@+id/register_username"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="20dip"
        android:background="@drawable/search" 
        android:layout_marginLeft="20dip"
        android:layout_marginRight="20dip"
        android:height="40dip"
        android:hint="用户名"
        />
 
     <EditText 
        android:id="@+id/register_passwd"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="20dip"
        android:background="@drawable/search" 
        android:layout_marginLeft="20dip"
        android:layout_marginRight="20dip"
        android:height="40dip"
        android:hint="密码"
        />
    
      <EditText 
        android:id="@+id/reregister_passwd"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="20dip"
        android:background="@drawable/search" 
        android:layout_marginLeft="20dip"
        android:layout_marginRight="20dip"
        android:height="40dip"
        android:hint="确认密码"
        />
      <Button 
          android:id="@+id/register_submit"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:background="@drawable/topbg"
          android:height="40dip"
          android:width="70dip"
          android:layout_marginTop="60dip"
          android:text="确定"
          android:textColor="#FFFFFF"
          android:textSize="22dip"
      
          />
     
</LinearLayout>

处理注册页面的Activity:

package com.example.foreveross.office;
 
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.List;
 
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.ParseException;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.util.EntityUtils;
 
import com.example.wenandroid.R;
import android.app.Activity;
import android.os.Bundle;
import android.os.StrictMode;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnFocusChangeListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
 
public class UserRegister extends Activity {
 
private EditText register_username;
private EditText register_passwd;
private EditText reregister_passwd;
private Button register_submit;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
        StrictMode.setThreadPolicy(policy);
        setContentView(R.layout.user_register);
        register_username=(EditText)findViewById(R.id.register_username);
        register_passwd=(EditText)findViewById(R.id.register_passwd);
        reregister_passwd=(EditText)findViewById(R.id.reregister_passwd);
        register_submit=(Button)findViewById(R.id.register_submit);
        register_username.setOnFocusChangeListener(new OnFocusChangeListener()
        {
 
            @Override
            public void onFocusChange(View v, boolean hasFocus) {
                // TODO Auto-generated method stub
                if(!hasFocus){
                    if(register_username.getText().toString().trim().length()<4){
                        Toast.makeText(UserRegister.this, "用户名不能小于4个字符", Toast.LENGTH_SHORT).show();
                    }
                }
            }
            
        });
        register_passwd.setOnFocusChangeListener(new OnFocusChangeListener()
        {
 
            @Override
            public void onFocusChange(View v, boolean hasFocus) {
                // TODO Auto-generated method stub
                if(!hasFocus){
                    if(register_passwd.getText().toString().trim().length()<6){
                        Toast.makeText(UserRegister.this, "密码不能小于8个字符", Toast.LENGTH_SHORT).show();
                    }
                }
            }
            
        });
        reregister_passwd.setOnFocusChangeListener(new OnFocusChangeListener()
        {
 
            @Override
            public void onFocusChange(View v, boolean hasFocus) {
                // TODO Auto-generated method stub
                if(!hasFocus){
                    if(!reregister_passwd.getText().toString().trim().equals(register_passwd.getText().toString().trim())){
                        Toast.makeText(UserRegister.this, "两次密码输入不一致", Toast.LENGTH_SHORT).show(); 
                    }
                }
            }
            
        });
        register_submit.setOnClickListener(new OnClickListener(){
 
            @Override
            public void onClick(View v) {
                
                if(!checkEdit()){
                    return;
                }
                // TODO Auto-generated method stub
                String httpUrl="http://192.168.1.100:8080/web-test/register.jsp";
                HttpPost httpRequest=new HttpPost(httpUrl);
                List<NameValuePair> params=new ArrayList<NameValuePair>();
                params.add(new BasicNameValuePair("username",register_username.getText().toString().trim()));
                params.add(new BasicNameValuePair("password",register_passwd.getText().toString().trim()));
                HttpEntity httpentity = null;
                try {
                    httpentity = new UrlEncodedFormEntity(params,"utf8");
                } catch (UnsupportedEncodingException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                httpRequest.setEntity(httpentity);
                HttpClient httpclient=new DefaultHttpClient();
                HttpResponse httpResponse = null;
                try {
                    httpResponse = httpclient.execute(httpRequest);
                } catch (ClientProtocolException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                if(httpResponse.getStatusLine().getStatusCode()==200)
                {
                    String strResult = null;
                    try {
                        strResult = EntityUtils.toString(httpResponse.getEntity());
                    } catch (ParseException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    } catch (IOException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    }
                    Toast.makeText(UserRegister.this, strResult, Toast.LENGTH_SHORT).show();
                }
                else
                {
                    Toast.makeText(UserRegister.this, "请求错误", Toast.LENGTH_SHORT).show();
                }
                
            }
            
        });
    }
    
    private boolean checkEdit(){
        if(register_username.getText().toString().trim().equals("")){
            Toast.makeText(UserRegister.this, "用户名不能为空", Toast.LENGTH_SHORT).show();
        }else if(register_passwd.getText().toString().trim().equals("")){
            Toast.makeText(UserRegister.this, "密码不能为空", Toast.LENGTH_SHORT).show();
        }else if(!register_passwd.getText().toString().trim().equals(reregister_passwd.getText().toString().trim())){
            Toast.makeText(UserRegister.this, "两次密码输入不一致", Toast.LENGTH_SHORT).show();
        }else{
            return true;
        }
        return false;
    }
    
}

登录页面:

user_login.xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" 
    android:background="@drawable/bg_01">
    
    <TextView 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="登录"
        android:textSize="22dip"
        android:textColor="#FFFFFF"
        android:paddingLeft="140dip"
        android:paddingRight="50dip"
        android:paddingTop="10dip"
        android:background="@drawable/topbg"
        />
    
    <LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical" >
        
        <EditText
        android:id="@+id/login_username"
        android:layout_width="fill_parent"
        android:layout_height="40dip"
        android:layout_marginLeft="20dip"
        android:layout_marginRight="20dip"
        android:layout_marginTop="30dip"
        android:hint="用户名"
        android:paddingTop="10dip"
        android:textSize="18dip"
        android:background="@drawable/search">
            
        </EditText>
        
        <EditText
        android:id="@+id/login_password"
        android:layout_width="fill_parent"
        android:layout_height="40dip"
        android:layout_marginLeft="20dip"
        android:layout_marginRight="20dip"
        android:layout_marginTop="10dip"
        android:password="true"
        android:paddingTop="10dip"
        android:textSize="18dip"
        android:hint="密码"
        android:background="@drawable/search">
            
        </EditText>
    </LinearLayout>
 
     <LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_gravity="center_horizontal"
    android:layout_marginTop="15dip">
 
         <CheckBox
             android:id="@+id/cb1"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:layout_marginLeft="50dip"
             android:layout_marginRight="30dip"
             android:text="记住密码" 
             android:button="@drawable/checkbox_icon_no" />"
         <CheckBox
             android:id="@+id/cb2"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:text="自动登录" 
             android:paddingRight="50dip"
             android:button="@drawable/checkbox_icon_no"/>
        </LinearLayout>
        
     <LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_gravity="center_horizontal"
    android:layout_marginTop="20dip">
         <Button 
             android:id="@+id/user_login_button"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:text="登录"
             android:layout_marginLeft="50dip"
             android:textColor="#F7FBFD"
             android:background="#FF0000"
             android:width="70dip"
             android:height="40dip"
             android:textSize="18dip"
             />
         
            <Button 
             android:id="@+id/user_register_button"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:text="注册"
             android:layout_marginLeft="50dip"
             android:textColor="#F7FBFD"
             android:width="70dip"
             android:height="40dip"
             android:background="#0F9000"
             android:textSize="18dip"
             />
         
     </LinearLayout>
     
</LinearLayout>

登录页面Activity:

package com.example.foreveross.office;
 
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.List;
 
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.ParseException;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.util.EntityUtils;
 
import com.example.wenandroid.R;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.StrictMode;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnFocusChangeListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
 
public class UserLogin extends Activity implements OnClickListener {
private EditText login_username;
private EditText login_password;
private Button user_login_button;
private Button user_register_button;
 
    @Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
    StrictMode.setThreadPolicy(policy);
    setContentView(R.layout.user_login);
    initWidget();
 
}
    private void initWidget()
    {
        login_username=(EditText)findViewById(R.id.login_username);
        login_password=(EditText)findViewById(R.id.login_password);
        user_login_button=(Button)findViewById(R.id.user_login_button);
        user_register_button=(Button)findViewById(R.id.user_register_button);
        user_login_button.setOnClickListener(this);
        user_register_button.setOnClickListener(this);
        login_username.setOnFocusChangeListener(new OnFocusChangeListener()
        {
 
            @Override
            public void onFocusChange(View v, boolean hasFocus) {
                // TODO Auto-generated method stub
                if(!hasFocus){
                    String username=login_username.getText().toString().trim();
                    if(username.length()<4){
                        Toast.makeText(UserLogin.this, "用户名不能小于4个字符", Toast.LENGTH_SHORT);
                    }
                }
            }
            
        });
        login_password.setOnFocusChangeListener(new OnFocusChangeListener()
        {
 
            @Override
            public void onFocusChange(View v, boolean hasFocus) {
                // TODO Auto-generated method stub
                if(!hasFocus){
                    String password=login_password.getText().toString().trim();
                    if(password.length()<4){
                        Toast.makeText(UserLogin.this, "密码不能小于4个字符", Toast.LENGTH_SHORT);
                    }
                }
            }
            
        });
    }
    
 
    @Override
    public void onClick(View v) {
        // TODO Auto-generated method stub
        switch(v.getId())
        {
        case R.id.user_login_button:
            if(checkEdit())
            {
                login();
            }
            
            break;
        case R.id.user_register_button:
            Intent intent2=new Intent(UserLogin.this,UserRegister.class);
            startActivity(intent2);
            break;
        }
    }
    
    private boolean checkEdit(){
        if(login_username.getText().toString().trim().equals("")){
            Toast.makeText(UserLogin.this, "用户名不能为空", Toast.LENGTH_SHORT).show();
        }else if(login_password.getText().toString().trim().equals("")){
            Toast.makeText(UserLogin.this, "密码不能为空", Toast.LENGTH_SHORT).show();
        }else{
            return true;
        }
        return false;
    }
    
    private void login(){
        String httpUrl="http://192.168.1.102:8080/web-test/login.jsp";
        HttpPost httpRequest=new HttpPost(httpUrl);
        List<NameValuePair> params=new ArrayList<NameValuePair>();
        params.add(new BasicNameValuePair("username",login_username.getText().toString().trim()));
        params.add(new BasicNameValuePair("password",login_password.getText().toString().trim()));
        HttpEntity httpentity = null;
        try {
            httpentity = new UrlEncodedFormEntity(params,"utf8");
        } catch (UnsupportedEncodingException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        httpRequest.setEntity(httpentity);
        HttpClient httpclient=new DefaultHttpClient();
        HttpResponse httpResponse = null;
        try {
            httpResponse = httpclient.execute(httpRequest);
        } catch (ClientProtocolException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        if(httpResponse.getStatusLine().getStatusCode()==200)
        {
            String strResult = null;
            try {
                strResult = EntityUtils.toString(httpResponse.getEntity());
            } catch (ParseException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            Toast.makeText(UserLogin.this, strResult, Toast.LENGTH_SHORT).show();
            Intent intent=new Intent(UserLogin.this,IndexActivity.class);
            startActivity(intent);
        }
        else
        {
            Toast.makeText(UserLogin.this, "登录失败!", Toast.LENGTH_SHORT).show();
        }
        
    }
}

登录成功则跳转到IndexActivity.java

来源:https://blog.csdn.net/zhu_hua_jie/article/details/9732731

标签:android,注册,登录
0
投稿

猜你喜欢

  • Android编程之滑动按钮事件实例详解

    2022-03-20 23:03:13
  • myeclipse安装Spring Tool Suite(STS)插件的方法步骤

    2023-02-22 00:56:02
  • Java基础之final关键字作用案例

    2022-11-02 19:23:35
  • Java程序设计之12个经典样例

    2022-09-22 18:44:00
  • C#实现Menu和ContextMenu自定义风格及contextMenu自定义

    2022-01-03 04:09:30
  • C# 删除字符串中的中文(实例分享)

    2021-12-30 12:55:48
  • Android自定义EditText实现登录界面

    2022-07-03 11:59:25
  • C#实现将窗体固定在显示器的左上角且不能移动的方法

    2022-03-04 18:34:17
  • SpringBoot项目没有把依赖的jar包一起打包的问题解决

    2021-08-11 12:15:02
  • SpringBoot整合SpringTask实现定时任务的流程

    2022-03-28 22:24:40
  • Java常用函数式接口总结

    2022-02-02 00:02:50
  • Unity命令行打包WebGL的示例代码

    2023-02-02 10:05:13
  • Java中break、continue、return在for循环中的使用

    2023-03-21 23:36:05
  • Android自定义属性 format的深入解析

    2022-12-05 14:56:57
  • Android N获取外置SD卡或挂载U盘路径的方法

    2023-07-14 22:21:03
  • 新浪微博第三方登录界面上下拉伸图片之第三方开源PullToZoomListViewEx(二)

    2021-07-25 04:52:35
  • spring bean.xml文件p标签使用报错的解决

    2022-03-12 23:16:16
  • 详解path和classpath的区别

    2023-05-02 13:28:32
  • C#控制台进行文件读写的方法

    2022-02-13 22:03:27
  • eclipse的git插件安装、配置与使用详解

    2021-07-23 10:04:47
  • asp之家 软件编程 m.aspxhome.com