国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android編程實現實時監聽EditText文本輸入的方法

2019-12-12 02:38:29
字體:
來源:轉載
供稿:網友

本文實例講述了Android編程實現實時監聽EditText文本輸入的方法。分享給大家供大家參考,具體如下:

平時在做Android開發過程中經常要用到EditText,有時候可能需要監聽你在TextView中輸入的字數的狀態和變化,以便于我們能做相應的提示和操作。我們可以通過下面的方式來實現。

class EditChangedListener implements TextWatcher {    private CharSequence temp;//監聽前的文本    private int editStart;//光標開始位置    private int editEnd;//光標結束位置    private final int charMaxNum = 10;    @Override    public void beforeTextChanged(CharSequence s, int start, int count, int after) {      if (DEBUG)        Log.i(TAG, "輸入文本之前的狀態");      temp = s;    }    @Override    public void onTextChanged(CharSequence s, int start, int before, int count) {      if (DEBUG)        Log.i(TAG, "輸入文字中的狀態,count是一次性輸入字符數");      mTvAvailableCharNum.setText("還能輸入" + (charMaxNum - s.length()) + "字符");    }    @Override    public void afterTextChanged(Editable s) {      if (DEBUG)        Log.i(TAG, "輸入文字后的狀態");      /** 得到光標開始和結束位置 ,超過最大數后記錄剛超出的數字索引進行控制 */      editStart = mEditTextMsg.getSelectionStart();      editEnd = mEditTextMsg.getSelectionEnd();      if (temp.length() > charMaxNum) {        Toast.makeText(getApplicationContext(), "你輸入的字數已經超過了限制!", Toast.LENGTH_LONG).show();        s.delete(editStart - 1, editEnd);        int tempSelection = editStart;        mEditTextMsg.setText(s);        mEditTextMsg.setSelection(tempSelection);      }    }};

加上監聽的事件。

mEditTextMsg.addTextChangedListener(new EditChangedListener());

效果圖:

更多關于Android相關內容感興趣的讀者可查看本站專題:《Android控件用法總結》、《Android開發入門與進階教程》、《Android視圖View技巧總結》、《Android編程之activity操作技巧總結》、《Android數據庫操作技巧總結》及《Android資源操作技巧匯總

希望本文所述對大家Android程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 永顺县| 土默特右旗| 海晏县| 迁西县| 南江县| 美姑县| 游戏| 深水埗区| 通城县| 桂林市| 汕头市| 宜兰县| 明水县| 定兴县| 陇南市| 浪卡子县| 馆陶县| 察哈| 都兰县| 南雄市| 平乡县| 明光市| 个旧市| 麦盖提县| 东乡县| 夹江县| 昌平区| 闽侯县| 宜州市| 砚山县| 策勒县| 青铜峡市| 吉林省| 茌平县| 东乡族自治县| 云龙县| 麦盖提县| 民县| 民县| 信丰县| 浦城县|