android 登录界面功能实现
来源:互联网 发布:相片幻灯片制作软件 编辑:程序博客网 时间:2024/05/16 07:26
源码:http://download.csdn.net/detail/lm_zp/9526062
功能介绍:
刚进入登录不能点击
只有两个输入框都输入值方可点击
点击小差号删除输入框内容
点击眼睛显示密码
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:background="#0f0" android:orientation="vertical" > <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginLeft="20dp" android:layout_marginRight="20dp" android:layout_marginTop="100dp" android:background="#fff" > <EditText android:id="@+id/edit1" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginRight="10dp" android:layout_marginTop="5dp" android:layout_weight="1" android:background="@null" android:hint="请输入用户名" android:singleLine="true" /> <ImageView android:id="@+id/image1" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_gravity="center" android:layout_marginRight="10dp" android:background="@drawable/bns_search_del" android:visibility="invisible" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginLeft="20dp" android:layout_marginRight="20dp" android:layout_marginTop="10dp" android:background="#fff" > <EditText android:id="@+id/edit2" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="5dp" android:layout_weight="10" android:background="@null" android:hint="请输入密码" android:singleLine="true" /> <ImageView android:id="@+id/image2" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_gravity="center" android:layout_marginLeft="10dp" android:layout_marginRight="10dp" android:layout_weight="1" android:background="@drawable/bns_search_del" android:visibility="invisible" /> <CheckBox android:id="@+id/checkbox" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" android:layout_marginRight="10dp" android:layout_weight="1" android:background="@drawable/mycheckbox" android:button="@null" /> </LinearLayout> <Button android:id="@+id/button" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:text="登录" /></LinearLayout>
res/drawable文件夹下
mycheckbox.xml
<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android" > <item android:state_checked="true" android:drawable="@drawable/icon_password2"></item> <item android:state_checked="false" android:drawable="@drawable/icon_password1"></item> <item android:drawable="@drawable/icon_password1"></item></selector>MainActivity.java
package com.example.mylogin;import android.os.Bundle;import android.app.Activity;import android.text.Editable;import android.text.Selection;import android.text.Spannable;import android.text.TextWatcher;import android.text.method.HideReturnsTransformationMethod;import android.text.method.PasswordTransformationMethod;import android.view.Menu;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.CheckBox;import android.widget.CompoundButton;import android.widget.EditText;import android.widget.ImageView;import android.widget.CompoundButton.OnCheckedChangeListener;public class MainActivity extends Activity {private EditText edit1;private EditText edit2;private Button button;private ImageView image1;private ImageView image2;private CheckBox checkBox;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);edit1 = (EditText) findViewById(R.id.edit1);edit2 = (EditText) findViewById(R.id.edit2);button = (Button) findViewById(R.id.button);image1 = (ImageView) findViewById(R.id.image1);image2 = (ImageView) findViewById(R.id.image2);checkBox = (CheckBox) findViewById(R.id.checkbox);button.setEnabled(false);edit1.addTextChangedListener(new TextWatcher() {@Overridepublic void onTextChanged(CharSequence s, int start, int before,int count) {// TODO Auto-generated method stub}@Overridepublic void beforeTextChanged(CharSequence s, int start, int count,int after) {// TODO Auto-generated method stub}@Overridepublic void afterTextChanged(Editable s) {// TODO Auto-generated method stub// 都不为空button显示if (edit1.getText().toString().equals("")|| edit2.getText().toString().equals("")) {button.setEnabled(false);} else {button.setEnabled(true);}// 当有值时小叉号显示if (edit1.getText().toString().equals("")) {image1.setVisibility(View.INVISIBLE);} else {image1.setVisibility(View.VISIBLE);}}});edit2.addTextChangedListener(new TextWatcher() {@Overridepublic void onTextChanged(CharSequence s, int start, int before,int count) {}@Overridepublic void beforeTextChanged(CharSequence s, int start, int count,int after) {}@Overridepublic void afterTextChanged(Editable s) {// TODO Auto-generated method stub// 都不为空button显示if (edit1.getText().toString().equals("")|| edit2.getText().toString().equals("")) {button.setEnabled(false);} else {button.setEnabled(true);}// 当有值时小叉号显示if (edit2.getText().toString().equals("")) {image2.setVisibility(View.INVISIBLE);} else {image2.setVisibility(View.VISIBLE);}}});// 清空用户名image1.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubedit1.setText("");}});// 清空密码image2.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubedit2.setText("");}});// 设置第一次输入密码未不可见状态edit2.setTransformationMethod(PasswordTransformationMethod.getInstance());checkBox.setOnCheckedChangeListener(new OnCheckedChangeListener() {@Overridepublic void onCheckedChanged(CompoundButton buttonView,boolean isChecked) {// TODO Auto-generated method stubif (isChecked) {// 设置EditText文本为可见的edit2.setTransformationMethod(HideReturnsTransformationMethod.getInstance());} else {edit2.setTransformationMethod(PasswordTransformationMethod.getInstance());}// 切换后将EditText光标置于末尾CharSequence charSequence = edit2.getText();if (charSequence instanceof Spannable) {Spannable spanText = (Spannable) charSequence;Selection.setSelection(spanText, charSequence.length());}}});}}
0 0
- android 登录界面功能实现
- Android 实现登录界面和功能实例
- Android实现登录界面和功能实例
- Android实现登录界面和功能实例
- Android 实现登录界面和功能实例
- Android实现登录界面和功能实例
- Android实现登录界面和功能实例
- Android实现登录界面功能和实现详解
- Android 实现登录界面 记住账号密码等功能
- Android登录界面用SharedPreferences实现记住密码功能
- Android登录界面用SharedPreferences实现记住密码功能
- Android登录界面用SharedPreferences实现记住密码功能
- Android登录功能实现
- Android——SharedPreferences实现登录界面的记住密码和自动登录功能
- Android——SharedPreferences实现登录界面的记住密码和自动登录功能
- Javaweb实现登录界面“记住我”功能
- Android_登录界面功能和实现详解
- Android 客户端登录界面实现
- C++重载
- 设置导航栏的标题 背景颜色和字体大小
- 域名解析和cdn 原理
- 数据处理
- python3.4-import方法返回“identifier expected”
- android 登录界面功能实现
- C#技术开发
- HDU 1358 Period(next数组+周期+循环节)
- python线程池(threadpool)模块使用
- find命令的操作练习(配截图)
- 永远都不要轻言放弃,因为没有人会随随便便成功
- 概率论
- MAC-将视频转成GIF
- 关于jsp页面传递中文参数乱码的解决