第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何在 EditText 字段上顯示錯(cuò)誤消息之前添加延遲?

如何在 EditText 字段上顯示錯(cuò)誤消息之前添加延遲?

千萬(wàn)里不及你 2023-05-10 15:13:42
我對(duì) editText 元素進(jìn)行了一些簡(jiǎn)單的正則表達(dá)式驗(yàn)證。我遇到的問(wèn)題是,如果驗(yàn)證失?。词褂脩羧栽谳斎耄e(cuò)誤會(huì)立即顯示,這不是很好的用戶體驗(yàn)。這是當(dāng)前的代碼。TextWatcher tw = new TextWatcher() {    public void afterTextChanged(Editable s) {        String currentTime = t_timeEditText.getText().toString();        if (!validTimepattern.matcher(currentTime).matches()){            timeEditText.setError("Not a valid time");        }    }}我認(rèn)為最好的解決方案是等到焦點(diǎn)從 editText 元素移開后再運(yùn)行上述驗(yàn)證?;蛘?,我們可以在運(yùn)行驗(yàn)證之前等待自上次輸入以來(lái)的 X 毫秒,或者只是在其中添加一些討厭的硬編碼延遲。有什么建議么?
查看完整描述

3 回答

?
青春有我

TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超8個(gè)贊

你可以用處理程序來(lái)做到這一點(diǎn)。根據(jù)您的要求更改 TIME_DELAY。在類級(jí)別定義時(shí)間延遲(1000 表示 1 秒)。我已經(jīng)根據(jù)您的要求修改了代碼。在這里我添加了 2 秒的延遲。你可以隨它去。


val TIME_DELAY : Int = 2000

if (!validTimepattern.matcher(currentTime).matches()){


    Handler().postDelayed(object : Runnable{

                    override fun run() {

         timeEditText.setError(“Not a valid time”);

                    }

                }, TIME_DELAY )

    }


查看完整回答
反對(duì) 回復(fù) 2023-05-10
?
MYYA

TA貢獻(xiàn)1868條經(jīng)驗(yàn) 獲得超4個(gè)贊

您可以使用 Handler.postDelayed 方法實(shí)現(xiàn)此目的


 private Handler handler = new Handler()


    private Runnable runnable  = new Runnable() {

      public void run() 

        { 

           timeEditText.setError("Not a valid time");

        } 


    }

并在 onCreate 內(nèi)部創(chuàng)建下面的文本觀察器并附加以編輯文本


TextWatcher tw = new TextWatcher() {

    public void afterTextChanged(Editable s) {

           timeEditText.setError(null)

         handler.removeCallbacks(runnable)


        if (!validTimepattern.matcher(currentTime).matches()){

             handler.postDelayed(runnable,3000)

        }

    }

}

并在 ondestroy 中添加以下行以避免活動(dòng)被銷毀時(shí)崩潰


 handler.removeCallbacks(runnable)


查看完整回答
反對(duì) 回復(fù) 2023-05-10
?
郎朗坤

TA貢獻(xiàn)1921條經(jīng)驗(yàn) 獲得超9個(gè)贊

如果你想暫停執(zhí)行一段時(shí)間(例如:毫秒),你可以使用 SystemClock.sleep(3000);



查看完整回答
反對(duì) 回復(fù) 2023-05-10
  • 3 回答
  • 0 關(guān)注
  • 239 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)