android EditText 设置密码锁源码
2015-09-13 11:17
399 查看
先设置监听事件
private void edit_pass() {
tw = new TextWatcher() {
// @Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
}
// @Override
public void onTextChanged(CharSequence s, int start, int before,
int count) {
Log.w("Log", "----" + s);
}
// @Override
public void afterTextChanged(Editable s) {
if (s.toString().length() == 1) {
if (pass1.isFocused()) {
pass1.clearFocus();
pass2.requestFocus();
} else if (pass2.isFocused()) {
pass2.clearFocus();
pass3.requestFocus();
} else if (pass3.isFocused()) {
pass3.clearFocus();
pass4.requestFocus();
} else if (pass4.isFocused()) {
pass4.clearFocus();
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(pass4.getWindowToken(), 0);
}
}
}
};
}
2.监听edittext
pass1 = (EditText) findViewById(R.id.edit_pass1);
pass2 = (EditText) findViewById(R.id.edit_pass2);
pass3 = (EditText) findViewById(R.id.edit_pass3);
pass4 = (EditText) findViewById(R.id.edit_pass4);
pass1.addTextChangedListener(tw);
pass2.addTextChangedListener(tw);
pass3.addTextChangedListener(tw);
pass4.addTextChangedListener(tw);
这就可以,每当你输完一个输入框的时候,焦点自动切到第二个输入框,看效果图
先设置监听事件 private void edit_pass() { tw = new TextWatcher() { // @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { } // @Override public void onTextChanged(CharSequence s, int start, int before, int count) { Log.w("Log", "----" + s); } // @Override public void afterTextChanged(Editable s) { if (s.toString().length() == 1) { if (pass1.isFocused()) { pass1.clearFocus(); pass2.requestFocus(); } else if (pass2.isFocused()) { pass2.clearFocus(); pass3.requestFocus(); } else if (pass3.isFocused()) { pass3.clearFocus(); pass4.requestFocus(); } else if (pass4.isFocused()) { pass4.clearFocus(); InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); imm.hideSoftInputFromWindow(pass4.getWindowToken(), 0); } } } }; } 2.监听edittext pass1 = (EditText) findViewById(R.id.edit_pass1); pass2 = (EditText) findViewById(R.id.edit_pass2); pass3 = (EditText) findViewById(R.id.edit_pass3); pass4 = (EditText) findViewById(R.id.edit_pass4); pass1.addTextChangedListener(tw); pass2.addTextChangedListener(tw); pass3.addTextChangedListener(tw); pass4.addTextChangedListener(tw); 这就可以,每当你输完一个输入框的时候,焦点自动切到第二个输入框,看效果图
相关文章推荐
- Android Fragment
- Android4.4的zygote进程(上)
- 关于MPAndroidChart柱状图左右滑动
- Activity
- Shape
- Android(java)学习笔记239:多媒体之撕衣服的案例
- Android下的stl读取3D显示
- android开发xml style使用
- Android Api Demos登顶之路(六十六)Graphics-->Animation Drawable
- android sdk环境安装
- 异步任务
- Android NDK and OpenCV Development With Android Studio
- Android事件处理机制轻量级源码分析
- Android中sqlite的应用
- 解决android studio adb not responding 的问题
- Android读写assets、raw、sdard和工程文件的方法
- Android 最热的高速发展框架XUtils
- android:src
- 处理运行时状态的改变
- android 有效载荷大图,避OOM