【Android】關(guān)于EditText

這是EditText的一些小內(nèi)容,自己之前沒有使用過,權(quán)當(dāng)記錄。

1、EditText的數(shù)據(jù)校驗

這里的數(shù)據(jù)校驗,場景是用在登錄的時候之類的,當(dāng)然也可以在其他地方。

當(dāng)輸入完之后,EditText上焦點轉(zhuǎn)移,就會觸發(fā)校驗判斷的代碼:

et1 = (EditText) findViewById(R.id.edittext1);

et1.setOnFocusChangeListener(new OnFocusChangeListener() {
            @Override
            public void onFocusChange(View arg0, boolean arg1) {
                if(!arg1){
                    String s = et1.getText().toString();
                    if(s.length()<5 || s.length()>10){
                        et1.setError("長度不符合5-10位");
                    }
                }
            }
        });

看我寫的簡單代碼中,如果輸入的字符串少于5位時,就會執(zhí)行et1.setError(),這個的效果就是在et后面增加這個紅底白色感嘆號。


數(shù)據(jù)校驗1

點擊共色的感嘆號??,就有如下的提示:

數(shù)據(jù)校驗2

2、EditText的中插入圖片

就是例如我需要在EditText中插入一個表情符號:
(說起來大概會很簡單,就是用SpannableString來設(shè)置復(fù)合文本)

準(zhǔn)備工作:

et2 = (EditText) findViewById(R.id.edittext2);
btn1 = (Button) findViewById(R.id.button1);
btn1.setOnClickListener(this);

點擊事件插入圖片:

@Override
public void onClick(View arg0) {
        // 定義一個位圖對象
        Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher);

        //定義一個可輸入EditText的字符串對象
        //SpannableString很關(guān)鍵
        SpannableString span= new SpannableString("pic");

        //將可輸入EditText的字符串對象替換成位圖對象
        ImageSpan imaSpan =new ImageSpan(MainActivity.this,bitmap);
        span.setSpan(imaSpan, 0, 3, SpannableString.SPAN_EXCLUSIVE_EXCLUSIVE);
        
        et2.append(span);
}

然后我們就可以看到效果,點擊一下后,EditText上出現(xiàn)一個圖像:

點擊一下

然后可以繼續(xù)添加:

點擊兩下
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容