一:设置好布局
<1>activity_main.xml
<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>
<2>login_bottom.xml
<3>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" />
<CheckBox
android:id="@+id/cbRememberPass"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/etPassword"
android:layout_below="@+id/etPassword"
android:text="记住密码" />
<Button
android:id="@+id/btnLogin"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignRight="@+id/etPassword"
android:layout_alignTop="@+id/cbRememberPass"
android:background="#FF72CAE1"
android:text="@string/btnLogin" />
</RelativeLayout>
<4>show.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<TextView
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:text="showTime!"
android:textSize="40sp"
android:gravity="center"/>
</LinearLayout>
二:进行代码编写
<1>mianactivity.java
package com.example.minitwittersimulate;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.Window;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.Toast;
public class MainActivity extends Activity {
private EditText etUsername; //账号
private EditText etPassword; //密码
private CheckBox cbRememberPass; //是否记住密码
private Button btnLogin; //登陆按钮
//声明一个sharedpreferences用于保存数据
private SharedPreferences mSpSettings=null;
private static final String PREFS_NAME="NamePwd";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//得到布局中的控件
findView();
//绑定控件事件
setListener();
//获取数据
getData();
}
protected void onResume(){
//在界面显示数据之前存储的数据
super.onResume();
getData();
}
private void getData() {
// TODO Auto-generated method stub
//得到sharedpreferernces对象
mSpSettings=getSharedPreferences(PREFS_NAME,MODE_PRIVATE);
//判断之前是否存储过用户名和密码
if(mSpSettings.getBoolean("iskeep", false)){
//如果之前存储过,则显示在相应的文本框内
etUsername.setText(mSpSettings.getString("username", ""));
etPassword.setText(mSpSettings.getString("password",""));
}else{
//否则显示空
etUsername.setText("");
etPassword.setText("");
}
}
private void setListener() {
// TODO Auto-generated method stub
btnLogin.setOnClickListener(new OnClickListener() {
public void onClick(View arg0){
//判断用户名和密码
if("admin".equals(etUsername.getText().toString())&&"123".equals(etPassword.getText().toString())){
//判断复选框是否选中
if(cbRememberPass.isChecked()){
mSpSettings=getSharedPreferences(PREFS_NAME, MODE_PRIVATE);
//得到editor对象
Editor edit=mSpSettings.edit();
//记录保存标记
edit.putBoolean("iskeep", true);
//记录用户名
edit.putString("username", etUsername.getText().toString());
//记录密码
edit.putString("password", etPassword.getText().toString());
edit.commit();//一定要提交
}
else{
mSpSettings=getSharedPreferences(PREFS_NAME, MODE_PRIVATE);
//得到editor对象
Editor edit=mSpSettings.edit();
//记录保存标记
edit.putBoolean("iskeep", false);
//记录用户名
edit.putString("username", "");
//记录密码
edit.putString("password", "");
edit.commit();
}
//跳转到首页
Intent intent=new Intent(MainActivity.this,SuccessActivity.class);
startActivity(intent);
}else{
//显示错误信息
Toast.makeText(getApplicationContext(), "用户名或密码错误", Toast.LENGTH_SHORT).show();
}
} });
}
private void findView() {
// TODO Auto-generated method stub
etUsername=(EditText) findViewById(R.id.etUsername);
etPassword=(EditText) findViewById(R.id.etPassword);
cbRememberPass=(CheckBox) findViewById(R.id.cbRememberPass);
btnLogin=(Button) findViewById(R.id.btnLogin);
}
}
<2>successactivity.java
package com.example.minitwittersimulate;
import android.app.Activity;
import android.os.Bundle;
public class SuccessActivity extends Activity {
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.show);
//setContentView(R.layout.show);
}
}