2010-05-10 69 views
0

我實際上有一個multiautocompletetextview,其中我調用3個字符後的主機有一個動態搜索列表。 但是,如果用戶把其他字符,我的代碼調用每個人的主機。所以它必須很長。等待t時間纔開始動作?

在啓動操作之前,我可以稍等片刻(約500毫秒),以查看用戶是否執行操作?這可能嗎?

回答

1

您可以使用separeted線程。當用戶輸入文本時,你可以創建一個線程,讓它休眠500ms,當它醒來時檢查輸入的文本是否改變。

編輯

創建一個處理程序

private Handler h = new Handler(); 

創建一個可運行,使您的動態搜索

private Runnable myrunnable = new Runnable() { 
    public void run() { 
     .... 
}; 

然後打電話給你的可運行在onTextChanged像

h.postDelayed(myrunnable, 500); 

有關更多選項和信息,請參閱Handler

確保您的線程以一致的方式訪問內存!

+0

thx很多,它工作正常 – Nanis 2010-05-11 12:26:55