是男人就下100层【第一层】——高仿微信界面(3)_sed

登录界面布局

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#eee"
android:orientation="vertical"
android:gravity="center_horizontal">
<RelativeLayout
android:id="@+id/login_top_layout"
android:layout_width="fill_parent"
android:layout_height="45dp"
android:layout_alignParentTop="true"
android:background="@drawable/title_bar">
<Button
android:id="@+id/login_reback_btn"
android:layout_width="70dp"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:text="返回"
android:textSize="14sp"
android:textColor="#fff"
android:onClick="login_back"
android:background="@drawable/title_btn_back"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:textSize="20sp"
android:textStyle="bold"
android:textColor="#ffffff"
android:text="登录"
/>

</RelativeLayout>
<EditText
android:id="@+id/login_user_edit"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/login_top_layout"
android:textColor="#000"
android:textSize="15sp"
android:layout_marginTop="25dp"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:singleLine="true"
android:background="@drawable/login_editbox"
android:hint="QQ号/微信号/手机号(请输入buaa)"/>
<EditText
android:id="@+id/login_passwd_edit"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/login_user_edit"
android:textColor="#000"
android:textSize="15sp"
android:layout_marginTop="25dp"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:background="@drawable/login_editbox"
android:password="true"
android:singleLine="true"
android:hint="密码(请输入123)"/>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:layout_below="@+id/login_passwd_edit"
>
<Button
android:id="@+id/forget_passwd"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="23dp"
android:layout_marginTop="5dp"
android:text="忘记密码?"
android:textSize="16sp"
android:textColor="#00f"
android:background="#0000"
android:onClick="login_pw"
/>
<Button
android:id="@+id/login_login_btn"
android:layout_width="90dp"
android:layout_height="40dp"
android:layout_marginRight="20dp"
android:layout_alignParentRight="true"
android:text="登录"
android:background="@drawable/btn_style_green"
android:textColor="#ffffff"
android:textSize="18sp"
android:onClick="login_mainweixin"
/>
</RelativeLayout>
</RelativeLayout>

在上面的界面中需要注意的是“返回”按钮的背景资源文件

<?xml version="1.0" encoding="UTF-8"?>
<selector
xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true" android:drawable="@drawable/mm_title_back_focused" />
<item android:state_pressed="true" android:drawable="@drawable/mm_title_back_pressed" />
<item android:state_selected="true" android:drawable="@drawable/mm_title_back_pressed" />
<item android:drawable="@drawable/mm_title_back_normal" />
</selector>

上一篇中已经见过,这里就不啰嗦了

输入框的背景布局文件

<?xml version="1.0" encoding="UTF-8"?>
<selector
xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true" android:drawable="@drawable/login_edit_pressed" />
<item android:state_focused="false" android:state_pressed="true" android:drawable="@drawable/login_edit_pressed" />
<item android:state_focused="false" android:drawable="@drawable/login_edit_normal" />
</selector>

按下获得焦点和失去焦点的背景不同

是男人就下100层【第一层】——高仿微信界面(3)_ico_02

接下来处理数据校验和跳转

public void login_mainweixin(View v) {
if ("dawanganban".equals(mUser.getText().toString())
&& "123456".equals(mPassword.getText().toString())) // 判断 帐号和密码
{
Intent intent = new Intent();
intent.setClass(Login.this, LoadActivity.class);
startActivity(intent);
// Toast.makeText(getApplicationContext(), "登录成功",
// Toast.LENGTH_SHORT).show();
} else if ("".equals(mUser.getText().toString())
|| "".equals(mPassword.getText().toString())) // 判断 帐号和密码
{
new AlertDialog.Builder(Login.this)
.setIcon(
getResources().getDrawable(
R.drawable.login_error_icon))
.setTitle("登录错误").setMessage("微信帐号或者密码不能为空,\n请输入后再登录!")
.create().show();
} else {

new AlertDialog.Builder(Login.this)
.setIcon(
getResources().getDrawable(
R.drawable.login_error_icon))
.setTitle("登录失败").setMessage("微信帐号或者密码不正确,\n请检查后重新输入!")
.create().show();
}
}

点忘记密码就不处理了,直接跳到一个页面吧

public void login_pw(View v) { // 忘记密码按钮
Uri uri = Uri.parse("");
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);
}

还有一个返回按钮,直接关闭当前Activity

public void login_back(View v) { // 标题栏 返回按钮
this.finish();
}

运行结果:

是男人就下100层【第一层】——高仿微信界面(3)_android_03                  是男人就下100层【第一层】——高仿微信界面(3)_xml_04