android實(shí)現(xiàn)注冊(cè)登錄程序
本文實(shí)例為大家分享了android實(shí)現(xiàn)注冊(cè)登錄程序的具體代碼,供大家參考,具體內(nèi)容如下
注冊(cè)頁(yè)面:
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="注冊(cè)" ? ? ? ? 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="確認(rèn)密碼" ? ? ? ? /> ? ? ? <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>
處理注冊(cè)頁(yè)面的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個(gè)字符", 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個(gè)字符", 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, "請(qǐng)求錯(cuò)誤", 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;
?? ?}
?? ?
}登錄頁(yè)面:
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="自動(dòng)登錄"? ? ? ? ? ? ? ?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="注冊(cè)" ? ? ? ? ? ? ?android:layout_marginLeft="50dip" ? ? ? ? ? ? ?android:textColor="#F7FBFD" ? ? ? ? ? ? ?android:width="70dip" ? ? ? ? ? ? ?android:height="40dip" ? ? ? ? ? ? ?android:background="#0F9000" ? ? ? ? ? ? ?android:textSize="18dip" ? ? ? ? ? ? ?/> ? ? ? ? ? ? ? ?</LinearLayout> ? ? ? </LinearLayout>
登錄頁(yè)面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個(gè)字符", 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個(gè)字符", 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();
?? ??? ?}
?? ??? ?
?? ?}
}登錄成功則跳轉(zhuǎn)到IndexActivity.java
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Android Studio實(shí)現(xiàn)注冊(cè)頁(yè)面跳轉(zhuǎn)登錄頁(yè)面的創(chuàng)建
- Android實(shí)現(xiàn)簡(jiǎn)單QQ登錄頁(yè)面
- 在Android環(huán)境下WebView中攔截所有請(qǐng)求并替換URL示例詳解
- Android WebView通過(guò)動(dòng)態(tài)的修改js去攔截post請(qǐng)求參數(shù)實(shí)例
- Android實(shí)現(xiàn)WebView點(diǎn)擊攔截跳轉(zhuǎn)原生
- Android基于方法池與回調(diào)實(shí)現(xiàn)登錄攔截的場(chǎng)景
相關(guān)文章
Android ListView滑動(dòng)刪除操作(SwipeListView)
這篇文章主要為大家詳細(xì)介紹了Android ListView滑動(dòng)刪除操作,主要是學(xué)習(xí)SwipeListView開(kāi)源框架。感興趣的小伙伴們可以參考一下2016-08-08
Android Intent傳遞大量數(shù)據(jù)出現(xiàn)問(wèn)題解決
這篇文章主要為大家介紹了Android Intent傳遞大量數(shù)據(jù)出現(xiàn)問(wèn)題解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07
Flutter?Flow實(shí)現(xiàn)滑動(dòng)顯隱層示例詳解
這篇文章主要為大家介紹了Flutter?Flow實(shí)現(xiàn)滑動(dòng)顯隱層示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-03-03
Android開(kāi)發(fā)中Dialog半透明背景消失
這篇文章主要介紹了Android開(kāi)發(fā)中Dialog半透明背景消失的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-11-11
Android持久化技術(shù)之文件的讀取與寫(xiě)入實(shí)例詳解
這篇文章主要介紹了Android持久化技術(shù)之文件的讀取與寫(xiě)入操作,結(jié)合實(shí)例形式較為詳細(xì)的分析講述了Android持久化操作的相關(guān)技巧與具體實(shí)現(xiàn)方法,需要的朋友可以參考下2016-01-01
android開(kāi)發(fā)中獲取手機(jī)分辨率大小的方法
不管是在我們的布局還是在實(shí)現(xiàn)代碼中進(jìn)行操控,我們的靈活性都不是局限于一個(gè)固定的數(shù)值,而是面對(duì)不同的手機(jī)對(duì)象都有一個(gè)適應(yīng)的數(shù)值。2013-04-04
Android組件創(chuàng)建DrawerLayout導(dǎo)航
這篇文章主要為大家詳細(xì)介紹了Android組件創(chuàng)建DrawerLayout導(dǎo)航的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-01-01

