安卓开发—帐号登录,自动登录功能

来源:互联网 发布:腾讯绿标域名短链生成 编辑:程序博客网 时间:2024/04/29 21:24

1.首是登陆功能,通过该类的静态方法login(String number, String passWord)可以实现账号登录,并根据返回结果判断登陆结果

 

2.记住密码自动登录。主要用到的是SharedPreference保存账号及密码下次启动程序自动登录

 <AbsoluteLayout xmlns:android="http://schemas.android.com/apk/res/android"  02.    xmlns:tools="http://schemas.android.com/tools"  03.    android:layout_width="wrap_content"  04.    android:layout_height="wrap_content"  05.    android:background="@drawable/bground"  06.    android:orientation="vertical" >  07. <Button   08.     android:layout_x="70dp"   09.     android:layout_height="wrap_content"  10.  android:id="@+id/login_enter"   11.  android:text="登录"   12.  android:layout_width="wrap_content"  13.  android:layout_y="325dp"   14.  android:textSize="15dp"   15.  android:textColor="#FA6289"></Button>  16. <Button   17.     android:layout_x="180dp"   18.     android:layout_height="wrap_content"  19.  android:id="@+id/login_reg"   20.  android:text="注册"   21.  android:layout_width="wrap_content"  22.  android:layout_y="325dp"   23.  android:textSize="15dp"   24.  android:textColor="#569D01"></Button>  25. <TextView   26.     android:textSize="15dp"   27.     android:textColor="#EF6D00"  28.  android:layout_width="wrap_content"   29.  android:layout_height="wrap_content"  30.  android:id="@+id/textView2"   31.  android:text="密码:"   32.  android:layout_x="46dp"  33.  android:layout_y="134dp"></TextView>  34.  35. <TextView  36.     android:id="@+id/textView1"  37.     android:layout_width="wrap_content"  38.     android:layout_height="wrap_content"  39.     android:layout_x="46dp"  40.     android:layout_y="78dp"  41.     android:text="用户名:"  42.     android:textColor="#EF6D00"  43.     android:textSize="15dp" />  44.  45. <CheckBox  46.     android:id="@+id/login_check1"  47.     android:layout_width="wrap_content"  48.     android:layout_height="wrap_content"  49.     android:layout_x="97dp"  50.     android:layout_y="194dp"  51.     android:checked="true"  52.     android:text="记住密码" />  53.  54. <CheckBox  55.     android:id="@+id/login_check2"  56.     android:layout_width="wrap_content"  57.     android:layout_height="wrap_content"  58.     android:layout_x="96dp"  59.     android:layout_y="242dp"  60.     android:text="自动登录" />  61.  62. <EditText  63.     android:id="@+id/login_name"  64.     android:layout_width="104dp"  65.     android:layout_height="64dp"  66.     android:layout_x="127dp"  67.     android:layout_y="41dp"  68.     android:ems="10"  69.     android:hint="输入用户名"  70.     android:textColor="#569D01" />  71.  72. <EditText  73.     android:id="@+id/login_pass"  74.     android:layout_width="106dp"  75.     android:layout_height="wrap_content"  76.     android:layout_x="124dp"  77.     android:layout_y="127dp"  78.     android:ems="10"  79.     android:hint="输入密码"  80.     android:inputType="textPassword"  81.     android:textColor="#569D01" >  82.  83.     <requestFocus />  84. </EditText>  85.  86.   87.  88.</AbsoluteLayout>  


3.切换账号。主要是清除储存的密码,跳转到登陆界面

01.<?xml version="1.0" encoding="utf-8"?>  02.<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  03.    android:layout_width="fill_parent"    04.    android:layout_height="fill_parent"    05.    android:background="@drawable/bground"    06.   android:orientation="vertical" >    07.     08.      09.    10.   <RelativeLayout    11.       android:layout_width="fill_parent"    12.        android:layout_height="wrap_content"     13.        android:layout_weight="3">    14.    15.        <ProgressBar    16.            android:id="@+id/pgBar"    17.            android:layout_width="wrap_content"    18.           android:layout_height="wrap_content"    19.           android:layout_centerInParent="true" />    20.    21.       <TextView    22.            android:id="@+id/tv1"    23.           android:layout_width="wrap_content"    24.            android:layout_height="wrap_content"    25.           android:layout_below="@id/pgBar"    26.           android:layout_centerHorizontal="true"    27.           android:text="正在登录..."    28.        android:textColor="#EF6D00"  29.            android:textSize="18sp" />    30.    </RelativeLayout>    31.   32.   <LinearLayout    33.        android:layout_width="fill_parent"    34.        android:layout_height="wrap_content"    35.       android:layout_weight="1"    36.        android:gravity="center"    37.        android:orientation="vertical" >    38.    39.       <Button    40.           android:id="@+id/btn_back"    41.            android:layout_width="70dip"    42.            android:layout_height="35dip"    43.            android:text="取消"    44.          android:textColor="#EF6D00"  45.            android:textSize="12sp" />    46.    </LinearLayout>    47.   48.    49.</LinearLayout>  


4.下面展示登录成功代码

01.<?xml version="1.0" encoding="utf-8"?>  02.<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  03.     android:layout_width="fill_parent"    04.    android:layout_height="fill_parent"    05.   android:layout_gravity="center"    06.    android:background="@drawable/bground"    07.   android:orientation="vertical" >    08.    09.    <TextView    10.        android:layout_width="fill_parent"    11.        android:layout_height="wrap_content"    12.       android:gravity="center"    13.       android:text="恭喜您,登陆成功!"    14.      android:textColor="#EF6D00"   15.       android:textSize="20sp" />    16.  17.  18.</LinearLayout>  


 

5.

MainActivity.java

01.package com.example.minitwittersimulate;  02.  03.import android.app.Activity;  04.import android.content.Intent;  05.import android.content.SharedPreferences;  06.import android.os.Bundle;  07.import android.view.View;  08.import android.widget.TextView;  09.import android.widget.Toast;  10.  11.public class MainActivity extends Activity {  12.    private SharedPreferences sp;  13.    private TextView talk;  14.    @Override  15.    protected void onCreate(Bundle savedInstanceState) {  16.        super.onCreate(savedInstanceState);  17.        setContentView(R.layout.home);       18.          19.        talk =(TextView) findViewById(R.id.talk);  20.          21.        sp=getSharedPreferences("userInfo", 0);  22.        String name =sp.getString("USER_NAME", "");  23.        boolean choseAutoLogin =sp.getBoolean("autologin1", false);  24.        if(choseAutoLogin){  25.            talk.setVisibility(0);  26.            talk.setText(name+"自动登录成功");  27.              28.            Intent intent = new Intent();  29.            intent.setClass(MainActivity.this, SuccessActivity.class);  30.            startActivity(intent);  31.        }  32.  33.    }  34.    //跳转到登录页面  35.    public void go(View v){  36.        //Intent intent =new Intent(this, LoginActivity.class);  37.        //startActivity(intent);  38.        Intent intent = new Intent();  39.        intent.setClass(MainActivity.this, LoginActivity.class);  40.        startActivity(intent);  41.    }  42.      43.    //点击退出销毁登录记录  44.    public void out(View v){  45.        SharedPreferences spout =getSharedPreferences("userInfo", 0);  46.        SharedPreferences.Editor ed =spout.edit();  47.        ed.clear();  48.        ed.commit();  49.        Toast.makeText(this, "销毁记录", Toast.LENGTH_SHORT).show();  50.    }  51.}  

6.LogoActivity.java

01.package com.example.handong;  02.    import android.widget.ProgressBar;    03.    import android.app.Activity;    04.    import android.content.Intent;    05.    import android.content.SharedPreferences;    06.    import android.content.SharedPreferences.Editor;    07.    import android.opengl.ETC1;    08.    import android.os.Bundle;    09.    import android.view.View;    10.    import android.view.View.OnClickListener;    11.    import android.view.Window;    12.    import android.view.animation.AlphaAnimation;    13.    import android.view.animation.Animation;    14.    import android.view.animation.Animation.AnimationListener;    15.    import android.widget.Button;    16.    import android.widget.ImageButton;    17.    public class LogoActivity extends Activity {    18.        private ProgressBar progressBar;    19.        private Button backButton;    20.        21.        protected void onCreate(Bundle savedInstanceState) {    22.           super.onCreate(savedInstanceState);      23.           this.requestWindowFeature(Window.FEATURE_NO_TITLE);    24.           setContentView(R.layout.logo);    25.       26.           progressBar = (ProgressBar) findViewById(R.id.pgBar);    27.           backButton = (Button) findViewById(R.id.btn_back);    28.       29.           Intent intent = new Intent(this, WelcomeActivity.class);    30.            LogoActivity.this.startActivity(intent);    31.        32.            backButton.setOnClickListener(new OnClickListener() {    33.      34.               public void onClick(View v) {    35.               finish();    36.  37.               }    38.       });    39.       40.   }    41.       42.    }    


7.WelcomeActivity.java


 

01.package com.example.handong;  02.  03.    import android.app.Activity;    04.    import android.os.Bundle;    05.        06.    public class WelcomeActivity extends Activity {    07.        08.        @Override    09.        protected void onCreate(Bundle savedInstanceState) {    10.            // TODO Auto-generated method stub     11.            super.onCreate(savedInstanceState);    12.            setContentView(R.layout.welcome);    13.    }    14.  15.  16.}  


 

0 0
原创粉丝点击