TextWatcher

起草人: 刘艺霞 日期:15年11月26日

修改完善:黄志达 日期:15年11月29日

一、实验目的

掌握TextWatcher的基本用法,使用TextWatcher限制输入字符个数以及实现EditText和TextView的同步

二、基础知识

简要介绍本次实验所需掌握的基础知识

  • 知识点1:

    在Android里使用TextWatcher接口可以很方便的对EditText进行监听;在EditText发生变化的时候,调用对应的处理事件进行处理。
    

注册监听:

mEditText = (EditText)findViewById(R.id.edittext);

mEditText.addTextChangedListener(mTextWatcher);

  • 知识点2:

    TextWatcher中有3个函数需要重载:
    

public void beforeTextChanged(CharSequence s, int start, int count, int after);

//在s中,从start处开始的count个字符将要被长度为after的文本替代

  • s 为变化前的内容;
  • start 为开始变化位置的索引,从0开始计数;
  • count 为将要发生变化的字符数
  • after 为用来替换旧文本的长度,比如s由1变为12,after为1,由12变为1,after为0;

public void onTextChanged(CharSequence s, int start, int before, int count);

//在s中,从start处开始的count个字符刚刚替换了原来长度为before的文本

  • s 为变化后的内容;
  • start 为开始变化位置的索引,从0开始计数;
  • before 为被取代的老文本的长度,比如s由1变为12,before为0,由12变为1,before为1;
  • count 为将要发生变化的字符数

public void afterTextChanged(Editable s);

//表示最终内容

  • 知识点3:

    知识点介绍
    

三、实验内容及步骤

3.1 实验内容

1、对布局中的EditText限制其输入字符个数

2、在EditText的文本发生改变的时候让TextView的内容跟着发生改变

3.2 实验步骤

1、在布局文件activity_main.xml中添加TextView和EditText控件:

2、在MainActivity.java中实现TextWatcher的三个方法,并对EditText添加事件监听函数

3、运行测试

……

四、常见问题及注意事项

1、注意要对EditText添加监听事件,如下: mEditText.addTextChangedListener(mTextWatcher);

results matching ""

    No results matching ""