android 註冊、登入實現程式

來源:互聯網
上載者:User

<?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;@Overrideprotected void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.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(){@Overridepublic void onFocusChange(View v, boolean hasFocus) {// TODO Auto-generated method stubif(!hasFocus){if(register_username.getText().toString().trim().length()<4){Toast.makeText(UserRegister.this, "使用者名稱不能小於4個字元", Toast.LENGTH_SHORT).show();}}}});register_passwd.setOnFocusChangeListener(new OnFocusChangeListener(){@Overridepublic void onFocusChange(View v, boolean hasFocus) {// TODO Auto-generated method stubif(!hasFocus){if(register_passwd.getText().toString().trim().length()<6){Toast.makeText(UserRegister.this, "密碼不能小於8個字元", Toast.LENGTH_SHORT).show();}}}});reregister_passwd.setOnFocusChangeListener(new OnFocusChangeListener(){@Overridepublic void onFocusChange(View v, boolean hasFocus) {// TODO Auto-generated method stubif(!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(){@Overridepublic void onClick(View v) {if(!checkEdit()){return;}// TODO Auto-generated method stubString 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 blocke.printStackTrace();}httpRequest.setEntity(httpentity);HttpClient httpclient=new DefaultHttpClient();HttpResponse httpResponse = null;try {httpResponse = httpclient.execute(httpRequest);} catch (ClientProtocolException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}if(httpResponse.getStatusLine().getStatusCode()==200){String strResult = null;try {strResult = EntityUtils.toString(httpResponse.getEntity());} catch (ParseException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.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;}}

登入頁面xml:

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;@Overrideprotected 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(){@Overridepublic void onFocusChange(View v, boolean hasFocus) {// TODO Auto-generated method stubif(!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(){@Overridepublic void onFocusChange(View v, boolean hasFocus) {// TODO Auto-generated method stubif(!hasFocus){String password=login_password.getText().toString().trim();if(password.length()<4){Toast.makeText(UserLogin.this, "密碼不能小於4個字元", Toast.LENGTH_SHORT);}}}});}@Overridepublic void onClick(View v) {// TODO Auto-generated method stubswitch(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 blocke.printStackTrace();}httpRequest.setEntity(httpentity);HttpClient httpclient=new DefaultHttpClient();HttpResponse httpResponse = null;try {httpResponse = httpclient.execute(httpRequest);} catch (ClientProtocolException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}if(httpResponse.getStatusLine().getStatusCode()==200){String strResult = null;try {strResult = EntityUtils.toString(httpResponse.getEntity());} catch (ParseException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.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();}}}

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.