通過模仿微博編輯框字數顯示——編輯框監聽介紹

微博輸入限制字數,編輯框右下角會有剩餘字數顯示,通過在項目中做了類似的編輯框,又看了一遍editview的監聽器。

先說基本原理,編輯框內容變化之後字數改變,具體的改變根據實際需要變化。

關於editview的監聽 通過使用addTextChangedListener(TextWatcher watcher)方法對EditText實現監聽。

TextWatcher watcher有三個抽象方法 


調用順序:beforeTextChanged-->onTextChanged-->afterTextChanged

只要在afterTextChanged中設置字數的獲取,處理,顯示就行了

 editIntroduceContent.addTextChangedListener(new TextWatcher() {
            @Override
            public void onTextChanged(CharSequence s, int start, int before,
                                      int count) {
            }
            @Override
            public void beforeTextChanged(CharSequence s, int start, int count,
                                          int after) {
            }
            @Override
            public void afterTextChanged(Editable s) {
                int number = MAXWORDS - s.length();
                editIntroduceShowText.setText(number+"");
                if(number<0){
                    editIntroduceShowText.setTextColor(Color.RED);
                }
            }
        });

MAXWORDS 最大字數限制
通過 onTextChanged事件監聽可以對用戶編輯狀態進行顯示 ,例如微信對方正在輸入的狀態顯示


通過對例子的模仿才能快速掌握知識



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章