手机登录

来源:互联网 发布:win10网络图标没了 编辑:程序博客网 时间:2024/04/29 17:27
<span style="background-color: rgb(255, 255, 255); font-family: Arial, Helvetica, sans-serif;">运行结果如下:</span>
<span style="color:#6666cc;TEXT-TRANSFORM: none; BACKGROUND-COLOR: rgb(255,255,255); TEXT-INDENT: 0px; DISPLAY: inline !important; FONT: bold 18px Arial, Helvetica, sans-serif; WHITE-SPACE: normal; FLOAT: none; LETTER-SPACING: normal; WORD-SPACING: 0px; -webkit-text-stroke-width: 0px">登陆界面:</span>
<p style="PADDING-BOTTOM: 2px; TEXT-TRANSFORM: none; BACKGROUND-COLOR: rgb(255,255,255); TEXT-INDENT: 0px; MARGIN: 4px 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT: 12px Arial, Helvetica, sans-serif; WHITE-SPACE: normal; LETTER-SPACING: normal; COLOR: rgb(0,0,0); WORD-SPACING: 0px; PADDING-TOP: 2px; -webkit-text-stroke-width: 0px"><span style="FONT-WEIGHT: bold"><span style="FONT-SIZE: 18px"><span style="COLOR: rgb(102,102,204)"><span><span><span><span><span style="BACKGROUND-COLOR: rgb(255,255,255)"><img style="MAX-WIDTH: 98%" alt="" src="http://img.blog.csdn.net/20150609223927584?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemd5MjI1MjE0/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" /></span></span></span></span></span></span></span></span></p><p style="PADDING-BOTTOM: 2px; TEXT-TRANSFORM: none; BACKGROUND-COLOR: rgb(255,255,255); TEXT-INDENT: 0px; MARGIN: 4px 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT: 12px Arial, Helvetica, sans-serif; WHITE-SPACE: normal; LETTER-SPACING: normal; COLOR: rgb(0,0,0); WORD-SPACING: 0px; PADDING-TOP: 2px; -webkit-text-stroke-width: 0px"><span style="FONT-WEIGHT: bold"><span style="FONT-SIZE: 18px"><span style="COLOR: rgb(102,102,204)"><span><span><span><span><span style="BACKGROUND-COLOR: rgb(255,255,255)">记住密码:</span></span></span></span></span></span></span></span></p><p style="PADDING-BOTTOM: 2px; TEXT-TRANSFORM: none; BACKGROUND-COLOR: rgb(255,255,255); TEXT-INDENT: 0px; MARGIN: 4px 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT: 12px Arial, Helvetica, sans-serif; WHITE-SPACE: normal; LETTER-SPACING: normal; COLOR: rgb(0,0,0); WORD-SPACING: 0px; PADDING-TOP: 2px; -webkit-text-stroke-width: 0px"><span style="FONT-WEIGHT: bold"><span style="FONT-SIZE: 18px"><span style="COLOR: rgb(102,102,204)"><span><span><span><span><span style="BACKGROUND-COLOR: rgb(255,255,255)"><img style="MAX-WIDTH: 98%" alt="" src="http://img.blog.csdn.net/20150609224005115?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemd5MjI1MjE0/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" /></span></span></span></span></span></span></span></span></p><span style="FONT-WEIGHT: bold"><span style="FONT-SIZE: 18px"><span style="COLOR: rgb(102,102,204)"><span><span><span><span><span style="BACKGROUND-COLOR: rgb(255,255,255)"></span></span></span></span></span></span></span></span><p style="PADDING-BOTTOM: 2px; TEXT-TRANSFORM: none; BACKGROUND-COLOR: rgb(255,255,255); TEXT-INDENT: 0px; MARGIN: 4px 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT: 12px Arial, Helvetica, sans-serif; WHITE-SPACE: normal; LETTER-SPACING: normal; COLOR: rgb(0,0,0); WORD-SPACING: 0px; PADDING-TOP: 2px; -webkit-text-stroke-width: 0px"><span style="FONT-WEIGHT: bold"><span style="FONT-SIZE: 18px"><span style="COLOR: rgb(102,102,204)"><span><span><span><span><span style="BACKGROUND-COLOR: rgb(255,255,255)">自动登录:</span></span></span></span></span></span></span></span></p><p style="PADDING-BOTTOM: 2px; TEXT-TRANSFORM: none; BACKGROUND-COLOR: rgb(255,255,255); TEXT-INDENT: 0px; MARGIN: 4px 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT: 12px Arial, Helvetica, sans-serif; WHITE-SPACE: normal; LETTER-SPACING: normal; COLOR: rgb(0,0,0); WORD-SPACING: 0px; PADDING-TOP: 2px; -webkit-text-stroke-width: 0px"><span style="FONT-WEIGHT: bold"><span style="FONT-SIZE: 18px"><span style="COLOR: rgb(102,102,204)"><span><span><span><span><span style="BACKGROUND-COLOR: rgb(255,255,255)"><img style="MAX-WIDTH: 98%" alt="" src="http://img.blog.csdn.net/20150609224100108?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemd5MjI1MjE0/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" /></span></span></span></span></span></span></span></span></p><p style="PADDING-BOTTOM: 2px; TEXT-TRANSFORM: none; BACKGROUND-COLOR: rgb(255,255,255); TEXT-INDENT: 0px; MARGIN: 4px 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT: 12px Arial, Helvetica, sans-serif; WHITE-SPACE: normal; LETTER-SPACING: normal; COLOR: rgb(0,0,0); WORD-SPACING: 0px; PADDING-TOP: 2px; -webkit-text-stroke-width: 0px"><span style="FONT-WEIGHT: bold"><span style="FONT-SIZE: 18px"><span style="COLOR: rgb(102,102,204)"><span><span><span><span><span style="BACKGROUND-COLOR: rgb(255,255,255)">观看自动登录结果:</span></span></span></span></span></span></span></span></p><p style="PADDING-BOTTOM: 2px; TEXT-TRANSFORM: none; BACKGROUND-COLOR: rgb(255,255,255); TEXT-INDENT: 0px; MARGIN: 4px 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT: 12px Arial, Helvetica, sans-serif; WHITE-SPACE: normal; LETTER-SPACING: normal; COLOR: rgb(0,0,0); WORD-SPACING: 0px; PADDING-TOP: 2px; -webkit-text-stroke-width: 0px"><span style="FONT-WEIGHT: bold"><span style="FONT-SIZE: 18px"><span style="COLOR: rgb(102,102,204)"><span><span><span><span><span style="BACKGROUND-COLOR: rgb(255,255,255)"><img style="MAX-WIDTH: 98%" alt="" src="http://img.blog.csdn.net/20150609224136318?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemd5MjI1MjE0/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" /></span></span></span></span></span></span></span></span></p><p style="PADDING-BOTTOM: 2px; TEXT-TRANSFORM: none; BACKGROUND-COLOR: rgb(255,255,255); TEXT-INDENT: 0px; MARGIN: 4px 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT: 12px Arial, Helvetica, sans-serif; WHITE-SPACE: normal; LETTER-SPACING: normal; COLOR: rgb(0,0,0); WORD-SPACING: 0px; PADDING-TOP: 2px; -webkit-text-stroke-width: 0px"><span style="FONT-WEIGHT: bold"><span style="FONT-SIZE: 18px"><span style="COLOR: rgb(102,102,204)"><span><span><span><span><span style="BACKGROUND-COLOR: rgb(255,255,255)"></span></span></span></span></span></span></span> <span style="FONT-SIZE: 18px"><span style="COLOR: rgb(102,102,204)"><span><span><span><span><span style="BACKGROUND-COLOR: rgb(255,255,255)">要实现一个手机记住密码和自动登录界面,步骤如下,首先先看一下需要建立一下类;</span></span></span></span></span></span></span></span></p><p style="PADDING-BOTTOM: 2px; TEXT-TRANSFORM: none; BACKGROUND-COLOR: rgb(255,255,255); TEXT-INDENT: 0px; MARGIN: 4px 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT: 12px Arial, Helvetica, sans-serif; WHITE-SPACE: normal; LETTER-SPACING: normal; COLOR: rgb(0,0,0); WORD-SPACING: 0px; PADDING-TOP: 2px; -webkit-text-stroke-width: 0px"><img style="MAX-WIDTH: 98%" alt="" src="http://img.blog.csdn.net/20150609222211199?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemd5MjI1MjE0/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" /></p><p style="PADDING-BOTTOM: 2px; TEXT-TRANSFORM: none; BACKGROUND-COLOR: rgb(255,255,255); TEXT-INDENT: 0px; MARGIN: 4px 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT: 12px Arial, Helvetica, sans-serif; WHITE-SPACE: normal; LETTER-SPACING: normal; COLOR: rgb(0,0,0); WORD-SPACING: 0px; PADDING-TOP: 2px; -webkit-text-stroke-width: 0px"><span style="font-size:18px;color:#660cc;"><span style="FONT-WEIGHT: bold">第一步:在res/layout/下建立activity_main.xml,实现一下整体布局背景</span></span></p><p style="PADDING-BOTTOM: 2px; TEXT-TRANSFORM: none; BACKGROUND-COLOR: rgb(255,255,255); TEXT-INDENT: 0px; MARGIN: 4px 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT: 12px Arial, Helvetica, sans-serif; WHITE-SPACE: normal; LETTER-SPACING: normal; COLOR: rgb(0,0,0); WORD-SPACING: 0px; PADDING-TOP: 2px; -webkit-text-stroke-width: 0px"></p><pre style="LINE-HEIGHT: normal; TEXT-TRANSFORM: none; BACKGROUND-COLOR: rgb(240,240,240); FONT-VARIANT: normal; FONT-STYLE: normal; TEXT-INDENT: 0px; MARGIN: 4px 0px; LETTER-SPACING: normal; COLOR: rgb(0,0,0); FONT-SIZE: 12px; FONT-WEIGHT: normal; WORD-SPACING: 0px; -webkit-text-stroke-width: 0px" class="html" name="code"><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:orientation="vertical"    android:background="@drawable/loginbg"    android:paddingBottom="@dimen/activity_vertical_margin"    android:paddingLeft="@dimen/activity_horizontal_margin"    android:paddingRight="@dimen/activity_horizontal_margin"    android:paddingTop="@dimen/activity_vertical_margin"    tools:context=".MainActivity" >  <include layout="@layout/login_top"/>  <include layout="@layout/login_bottom"/>"</LinearLayout>



 

 

第二步:在res/layout下建立login_bottom.xml文件,分为上下两部分,先对下半部分进行布局

<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="match_parent"    android:layout_height="wrap_content" >    <TextView        android:id="@+id/tvRegist"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_alignParentLeft="true"        android:layout_alignParentTop="true"        android:layout_marginLeft="21dp"        android:layout_marginTop="18dp"        android:text="@string/tvRegister"        android:autoLink="all"        android:textColorLink="#FF0066CC" />    <ImageView        android:id="@+id/imageView1"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_alignParentBottom="true"        android:layout_alignParentRight="true"        android:layout_marginBottom="24dp"        android:src="@drawable/panda" />    <ImageView        android:id="@+id/imageView2"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_alignParentBottom="true"        android:layout_centerHorizontal="true"        android:layout_marginBottom="28dp"        android:src="@drawable/icon" /></RelativeLayout>



 

第三步:在res/layout下建立login_top.xml文件,对上半部分进行布局

<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="match_parent"    android:layout_height="wrap_content"    android:background="@drawable/btnbg_roundcorner"    android:paddingBottom="@dimen/activity_vertical_margin"    android:paddingLeft="@dimen/activity_horizontal_margin"    android:paddingRight="@dimen/activity_horizontal_margin"    android:paddingTop="@dimen/activity_vertical_margin" >    <TextView        android:id="@+id/tvUsername"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_alignParentLeft="true"        android:layout_alignParentTop="true"        android:text="@string/tvName"        android:textAppearance="?android:attr/textAppearanceMedium" />    <EditText        android:id="@+id/etUsername"        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:layout_alignLeft="@+id/tvUsername"        android:layout_below="@+id/tvUsername"        android:background="@android:drawable/edit_text"        android:ems="10" >        <requestFocus />    </EditText>    <TextView        android:id="@+id/tvPassword"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_alignLeft="@+id/etUsername"        android:layout_below="@+id/etUsername"        android:text="@string/tvPassword"        android:textAppearance="?android:attr/textAppearanceMedium" />    <EditText        android:id="@+id/etPassword"        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:layout_alignLeft="@+id/tvPassword"        android:layout_below="@+id/tvPassword"        android:layout_marginTop="16dp"         android:background="@android:drawable/edit_text"        android:ems="10"        android:inputType="textPassword" />    <Button        android:id="@+id/btnLogin"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_alignRight="@+id/etPassword"        android:layout_below="@+id/etPassword"        android:layout_marginTop="20dp"        android:onClick="to2"        android:background="#9A32CD"        android:text="@string/btnLogin" />    <CheckBox        android:id="@+id/cbRememberPass"        android:layout_width="wrap_content"        android:layout_height="wrap_content"                android:layout_alignLeft="@+id/etPassword"        android:layout_alignTop="@+id/btnLogin"        android:text="记住密码" />    <CheckBox        android:id="@+id/autologin"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_alignBaseline="@+id/cbRememberPass"        android:layout_alignBottom="@+id/cbRememberPass"        android:layout_toRightOf="@+id/cbRememberPass"        android:text="自动登录" /></RelativeLayout>



 

第四步:在res/layout下建立newpager.xml文件,对跳转界面进行编辑

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:background="#B23AEE"    android:orientation="vertical" >    <TextView        android:id="@+id/textView1"        android:layout_width="180dp"        android:layout_height="wrap_content"        android:layout_margin="80dp"        android:layout_weight="10"        android:text="张桂云!!!"        android:textSize="40dp" /></LinearLayout>

第五步:在src下建立MainActivity.java文件

package com.example.minitwittersimulate;import android.os.Bundle;import android.app.Activity;import android.app.ProgressDialog;import android.content.Intent;import android.content.SharedPreferences;import android.view.View;import android.view.View.OnClickListener;import android.view.Window;import android.widget.Button;import android.widget.CheckBox;import android.widget.CompoundButton;import android.widget.CompoundButton.OnCheckedChangeListener;import android.widget.EditText;import android.widget.Toast;public class MainActivity extends Activity { private EditText name; private EditText pass; private CheckBox isRemenber; private CheckBox isLoginSelf; private Button longin; private ProgressDialog mDialog; @Override protected void onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  requestWindowFeature(Window.FEATURE_NO_TITLE);  setContentView(R.layout.activity_main);  name=(EditText) findViewById(R.id.etUsername);  pass=(EditText) findViewById(R.id.etPassword);  isRemenber=(CheckBox) findViewById(R.id.cbRememberPass);  isLoginSelf=(CheckBox) findViewById(R.id.autologin);  longin=(Button) findViewById(R.id.btnLogin);  final SharedPreferences sharedPreferences=getSharedPreferences("data",MODE_PRIVATE);  if(sharedPreferences!=null)  {   if(sharedPreferences.getBoolean("isrmb",false)==true)   {    name.setText(sharedPreferences.getString("name",null));    pass.setText(sharedPreferences.getString("pass",null));    isRemenber.setChecked(true);   }   if(sharedPreferences.getBoolean("islgs",false)==true)   {    isLoginSelf.setChecked(true);    ceratDialog();    new Thread()    {     public void run()     {      try{       Thread.sleep(3000);       if(mDialog.isShowing())       {        mDialog.dismiss();       }       Intent intent2=new Intent(MainActivity.this,newpager.class);       startActivity(intent2);       //finish();      }catch(Exception e)      {             }     }    }.start();   }  }  isRemenber.setOnCheckedChangeListener(new OnCheckedChangeListener() {      @Override   public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {    // TODO Auto-generated method stub    if(isRemenber.isClickable()==false)    {     isLoginSelf.setChecked(false);    }   }  });  isLoginSelf.setOnCheckedChangeListener(new OnCheckedChangeListener() {      @Override   public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {    // TODO Auto-generated method stub    isRemenber.setChecked(true);   }  });  longin.setOnClickListener(new OnClickListener() {      @Override   public void onClick(View v) {    // TODO Auto-generated method stub    if(!name.getText().toString().equals("") && !pass.getText().toString().equals(""))    {     if(isLoginSelf.isChecked())     {      sharedPreferences.edit().putBoolean("isrmb",true).putBoolean("islgs",true).putString("name",name.getText().toString()).putString("pass",pass.getText().toString()).commit();     }     else      if(isRemenber.isChecked())      {       sharedPreferences.edit().putBoolean("isrmb",true).putBoolean("islgs",false).putString("name",name.getText().toString()).putString("pass",pass.getText().toString()).commit();      }      else      {       sharedPreferences.edit().putBoolean("isrmb",false).putBoolean("islgs",false).putString("name",name.getText().toString()).putString("pass",pass.getText().toString()).putString("pass",pass.getText().toString()).commit();      }     Intent intent=new Intent(MainActivity.this,newpager.class);     startActivity(intent);     finish();    }    else{     Toast.makeText(getApplicationContext(), "密码或账号不能为空!",Toast.LENGTH_LONG).show();    }        }  }); }  /** public void to2 (View view) {  Intent intent=new Intent();  intent.setClass(this,welcome.class);  startActivity(intent); } **//** public void save (View view) {  SharedPreferences sharedPreferences=getSharedPreferences("data",MODE_PRIVATE);  Editor editor=sharedPreferences.edit();  editor.putString("username","user");  editor.putString("password","password");  editor.commit(); }**/ private void ceratDialog() {  mDialog=new ProgressDialog(this);  mDialog.setTitle("验证中");  mDialog.setMessage("正在登陆请稍后");  mDialog.setIndeterminate(true);  mDialog.setCancelable(true);  mDialog.show();   }}



 

 

第六步:在src下建立newpager.java文件

package com.example.minitwittersimulate;import android.app.Activity;import android.os.Bundle;import android.view.Window;public class newpager extends Activity { protected void onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  requestWindowFeature(Window.FEATURE_NO_TITLE);  setContentView(R.layout.newpager); }}



 

                                             
0 0
原创粉丝点击