全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Android登陆界面用户名检测功能

今天分享一下登陆界面用户登录名的检测,大家都知道如果在服务器端进行所有用户名的检测是比较浪费资源的。用户每点击一次登陆就要发到服务端去检测,对于服务端来说负荷是比较大的。所以呢在客服端对用户的非法信息进行简单的过滤是非常有必要的。

源码下载:Android用户名检测

首先看一下效果:

 

当用户输入的用户名长度小于3,或者大于9时将出现红色提示,并且登陆按钮不可点击。

当输入的用户名大在合法区间则提示消失,如果密码不为空则登陆按钮可点击
虽然功能很小却用到了不少的东西:

  • EditText失去焦点事件的监听
  • 获取输入的字符并且检测长度
  • 当用户名不合法时出现提示
  • 设置登录按钮的不可点击

接下来看一下源码,为了是登陆界面更加美观,我对登陆控件进行了圆形化处理,也就是开源醒目CircleImageView 项目主页地址:https://github.com/hdodenhof/CircleImageView:

<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="@color/colorLogin"

 >

 <!-- Login progress -->
 <ProgressBar
 android:id="@+id/login_progress"
 style="?android:attr/progressBarStyleLarge"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:layout_marginBottom="8dp"
 android:visibility="gone" />
 <RelativeLayout
 android:layout_width="match_parent"
 android:layout_height="180dp"

 android:id="@+id/head_img"
 >

 <de.hdodenhof.circleimageview.CircleImageView
  android:layout_width="80dp"
  android:layout_height="80dp"
  android:src="@mipmap/nav_head"
  android:layout_alignParentBottom="true"
  android:layout_centerHorizontal="true"
  android:layout_marginBottom="25dp" />
 </RelativeLayout>
 <LinearLayout
 android:layout_width="match_parent"
 android:layout_height="wrap_content"
 android:paddingBottom="20dp"
 android:orientation="vertical">
 <EditText
  android:id="@+id/et_user"
  android:layout_width="match_parent"
  android:layout_height="60dp"
  android:hint="@string/userName"
  android:background="@color/colorLoginForm"
  android:layout_marginBottom="5dp"
  />
 <TextView
  android:id="@+id/tv_tip"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:textColor="@color/error"
  />
 <EditText
  android:id="@+id/et_pass"
  android:layout_width="match_parent"
  android:layout_height="60dp"
  android:background="@color/colorLoginForm"
  android:hint="@string/passWord"
  android:paddingTop="1dp"
  />
 </LinearLayout>
 <Button
 android:id="@+id/button"
 android:layout_width="match_parent"
 android:layout_height="50dp"
 android:background="@color/loginButton"
 android:text="@string/loginButton"
 android:textColor="@color/colorLoginForm"
 />

</LinearLayout>

然后修改MainAvtivity.class:

public class MainActivity extends AppCompatActivity {
 EditText etUser;
 EditText etPassWord;
 TextView tvTip;
 Button button;
 @Override
 protected void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_main);
 //初始化View控件
 findView();
 //用于检测输入的用户名操作
 checkLength();
 }

 private void checkLength() {
 //为etUser设置焦点改变监听事件
 etUser.setOnFocusChangeListener(new View.OnFocusChangeListener(){
  @Override
  public void onFocusChange(View v, boolean hasFocus) {
  //如果失去焦点则进行用户名的检测
  if(etUser.hasFocus()==false){
   //如果用户名长度小于3或者大于9,则提示用户名错误且登陆不可点击
   if(etUser.getText().toString().length()>9||etUser.getText().toString().length()<3){
   tvTip.setText("用户名不合法!");
   button.setClickable(false);
   }else{
   //如果用户名合法且密码不为空,设置提示字体消失按钮可点击
   if(etPassWord.getText().toString()!=""){
   button.setClickable(true);
   tvTip.setText("");
   }
  }
  }


  }
 });
 }

 private void findView() {
 etUser= (EditText) findViewById(R.id.et_user);
 etPassWord= (EditText) findViewById(R.id.et_pass);
 tvTip= (TextView) findViewById(R.id.tv_tip);
 button= (Button) findViewById(R.id.button);
 }
}

整个代码的核心是编辑框的焦点改变的监听,然后对用户名进行判断。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# Android用户名检测  # Android登陆界面用户名检测  # Android登陆用户名检测  # Android开发中实现用户注册和登陆的代码实例分享  # Android实现带有记住密码功能的登陆界面  # Android如何通过手机获取验证码来完成注册功能  # Android设计登录界面、找回密码、注册功能  # Android登录注册功能 数据库SQLite验证  # Android实现登录注册功能封装  # Android实现简易登陆注册逻辑的实例代码  # 看一下  # 服务端  # 为空  # 不合法  # 登陆界面  # 大家都  # 客服  # 我对  # 比较大  # 开源  # 时将  # 登录名  # 大家多多  # 进行了  # 源码下载  # 主页地址  # 却用  # tools  # http  # schemas 


相关文章: 手机怎么制作网站教程步骤,手机怎么做自己的网页链接?  建站之星在线客服如何快速接入解答?  网页设计与网站制作内容,怎样注册网站?  怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?  Avalonia如何实现跨窗口通信 Avalonia窗口间数据传递  赚钱网站制作软件,建一个网站怎样才能赚钱?是如何盈利的?  如何实现建站之星域名转发设置?  jQuery 常见小例汇总  专业网站建设制作报价,网页设计制作要考什么证?  制作网站外包平台,自动化接单网站有哪些?  如何通过免费商城建站系统源码自定义网站主题与功能?  JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)  天津个人网站制作公司,天津网约车驾驶员从业资格证官网?  建站之星如何助力企业快速打造五合一网站?  合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?  营销式网站制作方案,销售哪个网站招聘效果最好?  北京的网站制作公司有哪些,哪个视频网站最好?  如何快速查询网站的真实建站时间?  网站制作多少钱一个,建一个论坛网站大约需要多少钱?  如何快速搭建高效简练网站?  建站168自助建站系统:快速模板定制与SEO优化指南  佛山企业网站制作公司有哪些,沟通100网上服务官网?  表情包在线制作网站免费,表情包怎么弄?  如何解决ASP生成WAP建站中文乱码问题?  品牌网站制作公司有哪些,买正品品牌一般去哪个网站买?  如何彻底卸载建站之星软件?  如何快速搭建虚拟主机网站?新手必看指南  个人摄影网站制作流程,摄影爱好者都去什么网站?  大连网站制作费用,大连新青年网站,五年四班里的视频怎样下载啊?  在线流程图制作网站手机版,谁能推荐几个好的CG原画资源网站么?  如何快速选择适合个人网站的云服务器配置?  公司网站制作需要多少钱,找人做公司网站需要多少钱?  企业宣传片制作网站有哪些,传媒公司怎么找企业宣传片项目?  网站制作公司排行榜,四大门户网站排名?  建站之星后台密码遗忘如何找回?  制作证书网站有哪些,全国城建培训中心证书查询官网?  做企业网站制作流程,企业网站制作基本流程有哪些?  如何在局域网内绑定自建网站域名?  ,网页ppt怎么弄成自己的ppt?  如何在香港服务器上快速搭建免备案网站?  股票网站制作软件,网上股票怎么开户?  建站主机SSH密钥生成步骤及常见问题解答?  常州企业网站制作公司,全国继续教育网怎么登录?  头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?  如何设置并定期更换建站之星安全管理员密码?  建站之星展会模板:智能建站与自助搭建高效解决方案  制作门户网站的参考文献在哪,小说网站怎么建立?  网站制作专业公司有哪些,如何制作一个企业网站,建设网站的基本步骤有哪些?  如何通过西部建站助手安装IIS服务器?  如何自定义建站之星模板颜色并下载新样式? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。