2010-10-29 50 views
5

我需要帶有固定後綴的EditText。我正在使用TextWatcher來捕獲onTextChanged事件,但是如果我通過添加後綴再次更改文本,它將導致由無限遞歸引起的stackoverflow異常。帶有固定後綴的Android EditText


msgtextview.addTextChangedListener(new TextWatcher() { 
     public void afterTextChanged(Editable s) { 

       //Doing some other stuff 

       msgtextview.setText("Changed Text") //This cause infinite recursion 

      }    
     } 

下面的代碼。

+0

發佈您的代碼,以便有人可以提供幫助,有十億種方法可以導致無限遞歸,我們需要看看您在做什麼。 – blindstuff 2010-10-29 17:12:00

回答

1

我假設你有一個堆棧溢出,因爲當你以編程方式添加後綴時,它會觸發一個onTextChanged事件。

你有沒有想過在編程設置它之前設置一個標誌,所以下次調用時你可以知道不要添加後綴?

另一種方法是僅在用戶提交表單後添加後綴。

+2

好吧,真是遺憾,我不認爲它是如此簡單.Tnx(來自qt4,我想知道是否有任何setSuffix()) – Martino 2010-10-31 10:30:19

相關問題