android實現(xiàn)注冊登錄程序
本文實例為大家分享了android實現(xiàn)注冊登錄程序的具體代碼,供大家參考,具體內(nèi)容如下
注冊頁面:
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="確認(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>
處理注冊頁面的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(); ?? ??? ?} ?? ??? ? ?? ?} }
登錄成功則跳轉(zhuǎn)到IndexActivity.java
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Android ListView滑動刪除操作(SwipeListView)
這篇文章主要為大家詳細(xì)介紹了Android ListView滑動刪除操作,主要是學(xué)習(xí)SwipeListView開源框架。感興趣的小伙伴們可以參考一下2016-08-08Android Intent傳遞大量數(shù)據(jù)出現(xiàn)問題解決
這篇文章主要為大家介紹了Android Intent傳遞大量數(shù)據(jù)出現(xiàn)問題解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-07-07Android持久化技術(shù)之文件的讀取與寫入實例詳解
這篇文章主要介紹了Android持久化技術(shù)之文件的讀取與寫入操作,結(jié)合實例形式較為詳細(xì)的分析講述了Android持久化操作的相關(guān)技巧與具體實現(xiàn)方法,需要的朋友可以參考下2016-01-01Android組件創(chuàng)建DrawerLayout導(dǎo)航
這篇文章主要為大家詳細(xì)介紹了Android組件創(chuàng)建DrawerLayout導(dǎo)航的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-01-01