1. 程式人生 > >Android實現限制EditText輸入文字的數量

Android實現限制EditText輸入文字的數量

一: 宣告控制元件。

         TextView hasnumTV;

        TextView hasnum;// 用來顯示剩餘字數

        int num = 50;// 限制的最大字數

二: 主要的方法:

  hasnumTV = (TextView) findViewById(R.id.tv_num);

                hasnumTV.setText("限" + num + "" + "字以內");

                editText.addTextChangedListener(new TextWatcher() {

                        private CharSequence temp;

                        private int selectionStart;

                        private int selectionEnd;

                        @Override

                        public void onTextChanged(CharSequence s, int start, int before,

                                        int count) {

                        }

                        public void beforeTextChanged(CharSequence s, int start, int count,

                                        int after) {

                                temp = s;

                        }

                        public void afterTextChanged(Editable s) {

                                // TODO Auto-generated method stub

                                int number = num - s.length();

                                hasnumTV.setText("剩餘" + "" + number + "個字");

                                selectionStart = editText.getSelectionStart();

                                selectionEnd = editText.getSelectionEnd();

                                if (temp.length() > num) {

                                        s.delete(selectionStart - 1, selectionEnd);

                                        int tempSelection = selectionEnd;

                                        editText.setText(s);

                                        editText.setSelection(tempSelection);// 設定游標在最後

                                }

                        }

                });


主要的效果是做到了輸入的限制文字

相關推薦

Android實現限制EditText輸入文字數量

一: 宣告控制元件。          TextView hasnumTV;         TextView hasnum;// 用來顯示剩餘字數         int num = 50;// 限制的最大字數 二: 主要的方法: hasnumTV = (Tex

Android學習筆記 —— Android 開發中,限制 EditText 輸入框不能輸入中文(漢字)

今天在練習開發一個小專案的時候,需要限制 EditText 輸入框不能輸入中文(漢字),在網上找了很多例子,  結合自己的實際,終於完成了這一功能。現在把程式碼記錄下來,方便以後查詢! 首先是xml佈

android 限制EditText輸入數字的範圍大小

一,要想限制EditText的輸入大小,經過學習和測試;最好是建立自己的EditText(當然是繼承的) public class DecimalEditText extends android.support.v7.widget.AppCompatEditText {

android限制EditText最大輸入位元組數

需求:使用者只能在輸入框內輸入15個位元組的字元(15個英文字元或5箇中文字元)瞭解:一個英文字元在Android中佔一個位元組,一箇中文字元在Android中佔3個位元組程式碼public class MainActivity extends AppCompatActivi

android限制edittext輸入為數字,只允許輸入數字和最多一個.和-

開發遇到的問題 安卓自帶的輸入數字不能輸入.和-,於是自己寫了個。基本夠用了 public void limit(final EditText listValue3){ listValue3.addTextChangedListener(new TextWa

Android】對EditText輸入金額新增限制及監聽

場景分析: 專案中我們需要在一個EditText控制元件中輸入金額,限制只能輸入數字,可以為小數但保留2位小數,同時監聽EditText一旦發現輸入金額大於0那麼使介面上的提交按鈕可點。 第一步:設定EditText的xml屬性 <EditText andr

關於如何限制EditText輸入文字行數為1

今天在學習Android開發,嘗試做一個登入系統。一般常見的登入介面,使用者名稱和密碼這兩欄的輸入是決不允許換行的,而我們使用edittext來獲取使用者名稱和密碼時,控制元件是預設可以換行的,所以我嘗試解決這一問題,首先,想到在xml中配置EditText的屬性時,有意向

android:限制EditText輸入位數

withDrawcet.addTextChangedListener(new TextWatcher() { @Override public voi

Android 實現TextView的部分文字和網路連結及電話號碼點選監聽

前言 最近在寫專案的時候遇到了一個這樣的需求,要像qq一樣,點選評論的者的名字要跳轉評論者的使用者資訊介面,並且點選評論資訊中的web連結要跳轉到WebActivity,同時如果是其他數字的話要像qq一樣點選並顯示底部Dialog提示是播打電話還是複製號碼。 效

android開發中將EditText輸入的明文與密文之間的切換

其實很簡單,獲取輸入的之後,設定一個showPassword布林值,然後進行判斷。 很簡單,程式碼如下: package com.kuaishouyin.activity; /** * 註冊頁面 */ import android.app.Activi

android 實現點選輸入框彈出日期選擇對話方塊(DatePickerDialog)

前言 這裡我們實現一個功能,點選日期輸入框(EditText),即可彈出日期選擇對話方塊(DatePickerDialog),等使用者選擇日期後,將使用者選擇的日期顯示在日期輸入框。 1.activity_main.xml 這裡只有一個TextView和EditText。

Android實現根據使用者輸入自動搜尋

最近App上線play商店,版本整來整去。下午閒暇之餘,一位老友忽然扣我,心情一陣激動。我還以為是要送我中秋月餅,丫的,上來就稀裡糊塗表明一堆需求。。。哇涼啊~ 行了,今天我就和大家分享下關於這個突如其來的"中秋好禮": EditText實現自動搜尋。自動搜尋的含義就是:

限制Edittext輸入的位元組長度

在給裝置重新命名時,裝置對名字的儲存空間一般都是多少位元組,而並非多少字,並通常都是採用utf-8的編碼。 那問題來了,utf-8的編碼是1-6個位元組的不等長度,如何獲取將一個超過30位元組的文字轉換到30位元組以內? Java中獲取utf-8文字的位元組長度很簡單,如

android實現gif圖與文字混排

public class AnimatedImageSpan extends DynamicDrawableSpan { private Drawable mDrawable; public AnimatedImageSpan(Drawable d) { super();

EditText輸入文字帶下劃線的效果

被面試的時候,問到這麼一個問題,當時說的需要自定義EditText。回來自己實現,發現有點難度。到處找資料,終於找到了解決的辦法。下面把具體程式碼貼出來,與大家共享^_^ 第一步,佈局檔案 <RelativeLayout xmlns:android="http://s

Android之設定EditText輸入型別(setInputType()方法和android:inputType屬性)

在Android開發過程中,我們經常使用到EditText控制元件,並且會根據各種需求設定它的輸入型別。設定EditText輸入型別主要有兩種方法,一種是使用EditText的setInputType()方法,另一種是在佈局檔案中使用android:inputT

Android中防止EditText輸入框被輸入法遮擋(畫面隨輸入法自適應)

有時候我們開發的時候會遇到一些奇怪的問題,比如EditText被輸入法部分遮擋,網上有一大堆這樣的解決辦法但是都太複雜,其實只需要在Activity屬性中新增一行程式碼即可: android:

Android實現搜尋,EditText+ListView(超簡單)

網上有很多實現搜尋框的解決方案,我寫的這個原理也很簡單,對搜尋框進行監聽,然後利用adapter.notifyDataSetChanged()對listview進行實時重新整理.下圖是我想達到的效果首先我們先構造ListViewprivate ListView listVie

限制UITextField 輸入文字的長度

監聽textField文字變化的事件 1、實現UITextFieldDelegate協議; 2、實現textField:shouldChangeCharactersInRange:replacementString:方法; -(BOOL)textField:(UITe

Android實現自定義帶文字和圖片的Button

專案中的需求往往十分怪異,例如在按鈕文字的左邊加一個圖示,這樣按鈕內部既有文字又有圖片,乍看之下Button和ImageView都沒法直接使用,若用LinearLayout對ImageView和Button組合佈局,這樣固然可行,但是佈局檔案會冗長許多 其實有一個既簡單又靈