第26章、OnKeyListener键盘事件(从零开始学Android)
可以通過鍵盤事件對EMAIL進(jìn)行驗(yàn)證(這是網(wǎng)上最多的例子),也可以加入關(guān)鍵字非法文字的過濾。如果要監(jiān)聽鍵盤事件,必須知道按下和松開兩種不同的操作,在OnKeyEvent可以找到按下松開的鍵。我們這個案例是輸入銀行卡號,用大字四個一組分隔回顯出來,用于提醒是否輸錯!
知識點(diǎn):OnKey
一、設(shè)計(jì)界面
1、打開“res/layout/activity_main.xml”文件。
(1)從工具欄向activity拖出1個文本編輯框EditText、2個文本標(biāo)簽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"><TextViewandroid:id="@+id/prompt"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="銀行賬號:" /><EditTextandroid:id="@+id/accout"android:layout_width="wrap_content"android:layout_height="wrap_content"android:ems="10" /><TextViewandroid:id="@+id/info"android:layout_width="wrap_content"android:layout_height="wrap_content"android:textSize="25sp"android:text="" /></LinearLayout>
3、界面如下
二、OnKey鍵盤事件
1、打開“src/com.genwoxue.onkey/MainActivity.java”文件。
然后輸入以下代碼:
package com.genwoxue.onkey;import android.os.Bundle; import android.app.Activity; import android.view.KeyEvent; import android.view.View; import android.widget.TextView; import android.widget.EditText; import android.view.View.OnKeyListener;public class MainActivity extends Activity {private EditText etAccout=null;private TextView tvInfo=null;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);tvInfo=(TextView)super.findViewById(R.id.info);etAccout=(EditText)super.findViewById(R.id.accout);etAccout.setOnKeyListener(new EmailOnKeyListener());}private class EmailOnKeyListener implements OnKeyListener{@Overridepublic 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()))+"-";elsenews=news+total.substring(i*4,Math.min(i*4+4,total.length()));return news;}}}在Android App中,鍵盤事件主要用于對鍵盤事件的監(jiān)聽,根據(jù)用戶輸入內(nèi)容對鍵盤事件進(jìn)行跟蹤,鍵盤事件使用View.OnKeyListener接口進(jìn)行事件處理,接口定義如下
public static interface View.OnKeyListener{
public boolean OnKey(View v,int keyCode,KeyEvent event);
}
2、輸入銀行賬號,自動回顯字符。
效果如下:
總結(jié)
以上是生活随笔為你收集整理的第26章、OnKeyListener键盘事件(从零开始学Android)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 一个开源且完全自主开发的国产网络协议栈
- 下一篇: 数据中心网络如何发展成为无损数据中心网络