--------------------------------------------strings.xml--------------------------------------------
<resources> <string name="app_name">com.ch02</string> <string name="hello_world">Hello world!</string> <string name="menu_settings">Settings</string> <string name="title_activity_main">com.ch02</string> <string name="uname">用户名</string> <string name="upass">密码</string> </resources>
--------------------------------------------activity_main.xml------------------------------------
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/LinearLayout1" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/uname" /> <EditText android:id="@+id/uname" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/upass" /> <EditText android:id="@+id/upass" android:layout_width="fill_parent" android:layout_height="wrap_content" android:inputType="textPassword" /> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="显示密码" /> <CheckBox android:id="@+id/show" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <Button android:id="@+id/btn" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="登录" /> </LinearLayout>
--------------------------------------------MainActivity-------------------------------------------
package com.ch02; import com.ch02.R; import android.app.Activity; import android.os.Bundle; import android.text.method.HideReturnsTransformationMethod; import android.text.method.PasswordTransformationMethod; import android.view.View; import android.view.View.OnClickListener; 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; /** * * 项目名称:com.ch02 * 类名称:MainActivity * 类描述: 用户登录验证 * 创建人:fy * 创建时间:2012-11-2 上午9:36:10 * Copyright (c) 方勇-版权所有 */ public class MainActivity extends Activity { /* 用户名 */ private EditText field_uname; /* 密码 */ private EditText field_upass; /* 登录按钮 */ private Button btn_login; /* 密码显示与隐藏开关 */ private CheckBox check_show; private boolean mbDisplayFlg = false; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); findViews(); setListeners(); } /* 初始化UI控件 */ private void findViews() { field_uname = (EditText) findViewById(R.id.uname); field_upass = (EditText) findViewById(R.id.upass); btn_login = (Button) findViewById(R.id.btn); check_show = (CheckBox) findViewById(R.id.show); } /* 设置监听器 */ private void setListeners() { btn_login.setOnClickListener(onClickListener); check_show.setOnCheckedChangeListener(onCheckedChangeListener); } /* 复选按钮事件,密码显示与隐藏开关 */ private OnCheckedChangeListener onCheckedChangeListener = new OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { if (!mbDisplayFlg) { // display password text, for example "123456" field_upass.setTransformationMethod(HideReturnsTransformationMethod.getInstance()); } else { // hide password, display "." field_upass.setTransformationMethod(PasswordTransformationMethod.getInstance()); } mbDisplayFlg = !mbDisplayFlg; field_upass.postInvalidate(); } }; /* 监听器 变量 */ private OnClickListener onClickListener = new OnClickListener() { public void onClick(View v) { Toast.makeText(MainActivity.this, field_uname.getText().toString(), Toast.LENGTH_SHORT).show(); } }; }