OnKeyListener键盘事件验证银行帐号

可以通过键盘事件对EMAIL进行验证(这是网上最多的例子),也可以加入关键字非法文字的过滤。如果要监听键盘事件,必须知道按下和松开两种不同的操作,在OnKeyEvent可以找到按下松开的键。我们这个案例是输入银行卡号,用大字四个一组分隔回显出来,用于提醒是否输错!

  知识点:OnKey

一、设计界面

  1、打开“res/layout/activity_main.xml”文件。

  (1)从工具栏向activity拖出1个文本编辑框EditText、2个文本标签TextView。

3、打开activity_main.xml文件。

  完整代码如下:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

<TextView
        android:id="@+id/prompt"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/prompt" />

<EditText
        android:id="@+id/account"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:ems="10" />

<TextView
        android:id="@+id/info"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="25sp"
        android:text="" />

</LinearLayout>

二、OnKey键盘事件 

  1、打开“src/com.genwoxue.onkey/MainActivity.java”文件。

  然后输入以下代码:  

package com.example.hw;

import android.app.Activity;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.Menu;
import android.view.View;
import android.view.View.OnKeyListener;
import android.widget.EditText;
import android.widget.TextView;

public class MainActivity extends Activity {
private EditText etAccout = null;
private TextView tvInfo = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
etAccout = (EditText) findViewById(R.id.account);
tvInfo = (TextView) findViewById(R.id.info);
etAccout.setOnKeyListener(new OnKeyListener() {

@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
//输入银行帐号,用大字回显出来字符,每4个用横线隔开
switch(event.getAction()){
case KeyEvent.ACTION_UP: //键盘松开
String sAccout = etAccout.getText().toString();
tvInfo.setText(Subs(sAccout));
case KeyEvent.ACTION_DOWN://键盘按下
break;
}
return false;
}

private String Subs(String total) {
String news = "";

//分段后最后不加中间横线-
for(int i=0;i<=total.length()/4;i++)

if(i*4+4<total.length())
news = news+total.substring(i*4,Math.min(i*4+4, total.length()))+"-";
else
news = news+total.substring(i*4,Math.min(i*4+4, total.length()));
return news;
}
});
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}

在Android App中,键盘事件主要用于对键盘事件的监听,根据用户输入内容对键盘事件进行跟踪,键盘事件使用View.OnKeyListener接口进行事件处理,接口定义如下

  public static interface View.OnKeyListener{

    public boolean OnKey(View v,int keyCode,KeyEvent event);

  }

  2、输入银行账号,自动回显字符。

  效果如下:

本文转自:程序员鼓励师

时间: 2024-08-25 17:36:01

OnKeyListener键盘事件验证银行帐号的相关文章

取客户的银行帐号SQL

SELECT ibybanks.bank_name, --银行 ibybanks.bank_branch_name, --分行 ibybanks.bank_account_num_electronic--银行帐号 FROM iby_external_payers_all iepa, iby_pmt_instr_uses_all ipiua, iby_ext_bank_accounts_v ibybanks WHERE iepa.payment_function = 'CUSTOMER_PAYME

ThinkPHP 3.2 用户注册邮箱验证激活帐号

本文将结合实例,讲解如何使用PHP+Mysql完成注册帐号.发送激活邮件.验证激活帐号.处理URL链接过期的功能. 业务流程 1.用户提交注册信息. 2.写入数据库,此时帐号状态未激活. 3.将用户名密码或其他标识字符加密构造成激活识别码(你也可以叫激活码). 4.将构造好的激活识别码组成URL发送到用户提交的邮箱. 5.用户登录邮箱并点击URL,进行激活. 6.验证激活识别码,如果正确则激活帐号. 准备数据表 用户信息表中字段Email很重要,它可以用来验证用户.找回密码.甚至对网站方来说可以

iOS开发者帐号申请指南

iOS开发者的申请流程如果你是一个开发团队,在你打算掏腰包购买iOS开发者授权之前,最好先问一下你的同事,是否已经有人获得了开发许可,因为一个开发许可一年内最多可以授权给111个设备来开发测试.如果你没有授权许可可以借用,或者你打算最终在iTunes Store中以自己的名义发布你的应用,那么就准备一张国际信用卡,准备支付99美元来申请一个iOS开发者授权. 点击下面链接进入Apple Developer Centerhttp://developer.apple.com/点击页面左边中部的iOS

键盘事件、触摸事件

OnKeyListener(键盘事件) 1TextView tv=(TextView) findViewById(R.id.keyTV02); 2 EditText input=(EditText) findViewById(R.id.keyET01); 3 ImageView img=(ImageView) findViewById(R.id.keyImg01); 4 input.setOnKeyListener(new OnKeyListener(){ 5 public boolean on

事件处理【安卓4】——键盘事件、触摸事件

OnKeyListener(键盘事件) 正则表达式       w:任意字符   +:一个或一个以上字符 1 TextView tv=(TextView) findViewById(R.id.keyTV02); 2 EditText input=(EditText) findViewById(R.id.keyET01); 3 ImageView img=(ImageView) findViewById(R.id.keyImg01); 4 input.setOnKeyListener(new On

公司僵尸帐号引发了一系列的入侵事件-细说密码强度验证的重要性

一.前言 每个公司几乎都会有一个公司的内部系统,每个员工的入职的的时候都会给开一个帐号,一般开帐号的这个人不会考虑帐号的安全性,用户名大多都是员工的姓名或者工号,密码也是姓名或者工号或者123456,如果可以输入123的话估计就设置123了,哈哈,那么问题就来了.如果这个员工不用这个系统不用这个系统或者不重置密码,很容易让别人登录的,导致公司内部的系统信息外泄,损失惨重. 最近公司的内部系统发现了异常,一些帐号在一些奇怪的地方登录,密码几乎大部分是弱密码,什么123456,123abc,6543

登录验证,错误三次锁定帐号

需求:用户的登录验证,登录错误三次锁定用户,用户名和密码保存在文件中 编译环境:python3 流程图如下: 代码如下: file = open('lock.txt').readlines() name = input("username:\n>>").strip() lock = [] for i in file: line = i.strip('\n') lock.append(line) if name in lock: print(name, "已经被锁定

教你一步一步部署.net免费空间OpenShift系列之一------帐号注册和验证

前几天有博友发布了一篇文章<一键部署mono 免费空间支持ASP.NET MVC 再也不担心伙食费换空间了>,支持MVC3和域名绑定,觉得不错,于是自己实践了一下,发现自己实际遇到的问题真不少,而且网上的关于此空间的帖子要么千篇一律,要么语焉不详,现总结为图文教程系列 帐号注册和验证 打开https://www.openshift.com/products/pricing,出现三种选择,前2种是免费的,建议选择第二个. 点击Create one跳转到创建用户界面 看到如下信息,填写邮箱和密码,

微信公众帐号开发-自定义菜单的创建及菜单事件响应

注:文章代码来源于柳峰的微信公众平台应用开发 微信开发公众平台自定义菜单需要花钱认证才能实现,不想花钱只能玩测试账号了,不过这并不影响开发.我的开发都是基于柳峰老师的微信公众平台应用开发做的. 只要我们使用公众平台测试账号就可以开发自定义菜单了,比较方便,测试账号开放了很多接口,很方便. 在开发自定义菜单的时候可以参考微信公众平台开发者文档的自定义菜单创建. 一.自定义菜单 1.自定义菜单最多包括3个一级菜单,每个一级菜单最多包含5个二级菜单. 2.一级菜单最多4个汉字,二级菜单最多7个汉字,多