Android 输入框第一次弹出数字键盘, 后面可以随意切换
来源:互联网 发布:伯俊软件 编辑:程序博客网 时间:2024/06/04 01:13
前言
记录一次关于 EditText 首次输入需要弹出数字键盘,然后可以随便切换输入模式,下面以 输入身份证号 为例,因为身份证号只可能是数字 + 字母 X,所以这里不仅做了首次弹出数字键盘,还实现了对于其他键盘模式输入做了限制,只能输入字母 X 。
代码
xml
<?xml version="1.0" encoding="utf-8"?><RelativeLayout 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" tools:context="com.example.mu_16jj.edittextinputtypedemo.MainActivity"> <EditText android:id="@+id/et_main" android:layout_width="300dp" android:layout_height="45dp" android:layout_centerHorizontal="true" android:layout_marginTop="25dp" android:background="@drawable/sh_et_blue_bg" android:gravity="center_vertical" android:hint="第一次打开键盘为数字键盘" android:paddingLeft="5dp" android:textColor="@android:color/black" /></RelativeLayout>
这里没什么可解释的,就一个输入框,需要注意:这里并没有指定输入类型,因为如果指定了输入类型,那么就限定死了。
Java
private void initView() { setContentView(R.layout.activity_main); editText = (EditText) findViewById(R.id.et_main); editText.setKeyListener(listener); } KeyListener listener = new NumberKeyListener() { /** * @return :返回哪些希望可以被输入的字符,默认不允许输入 */ @Override protected char[] getAcceptedChars() { char[] chars = new char[]{'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'X'}; return chars;// return new char[0]; } /** * 0:无键盘,键盘弹不出来 * 1:英文键盘 * 2:模拟键盘 * 3:数字键盘 * * @return */ @Override public int getInputType() { return 3; } };
这就是核心代码了,主要就是监听,方法的返回值都做了详细的注释说明。在上面代码的情况下,真机运行效果,数字可以随便输入,字母是可以输入大写的 X,其他字符均输入不了。
转载请注明出处
http://www.jianshu.com/p/1932ff1b78de
阅读全文
0 0
- Android 输入框第一次弹出数字键盘, 后面可以随意切换
- Android 输入框第一次弹出数字键盘, 后面可以随意切换
- Android 输入框第一次弹出数字键盘, 后面可以随意切换
- android 只能输入数字和字母并且弹出数字键盘
- android 只能输入数字和字母并且弹出数字键盘
- android edittext切换数字键盘
- Android 自定义的数字键盘 支持随意拖动 和稳定的字符输入的控件
- webview的input输入框获取焦点弹出数字键盘
- 如何让android弹出数字键盘
- Android弹出数字键盘的方法
- android 输入框输入时自动跳到数字键盘
- android 自定义纯数字键盘输入
- 【Android自定义控件】密码输入框+数字键盘的实现
- Android 自定义数字键盘(三)自定义输入框
- android webview 点击文本框弹出数字键盘
- 自动弹出数字键盘 EditText(Android) UITextField(iOS)
- EditText设置弹出数字键盘,并且只能输入数字和.
- Adroid EditText限制输入数字与英文默认弹出数字键盘
- 有序列标签
- bzoj 3530 [Sdoi2014]数数
- android UI 进程
- android开发常见编程错误总结
- Vue基础之Vue实例
- Android 输入框第一次弹出数字键盘, 后面可以随意切换
- git 下载的太大的文件RPC failed; HTTP 504 curl 22 The requested URL returned error: 504 Gateway Time-out
- jQuery判断某个节点或者元素是否存在
- VS打开之前创建的MFC工程显示代码错误的解决办法
- 系列:iOS开发-Masonry的使用
- kotlin(1):基本类型+包
- 用户数据注册安全性
- 高性能数据库之三MySQL架构设计
- codevs3269 混合背包