2012-07-28 35 views
0

我有一個自定義ListView,它包含一個TextView(數字)和一個EditText在一行中。在標題之外,我有一個TextView。如何在android中使用TextWatcher?

我追問的是,當我要輸入任意數量到任何EDITTEXT然後標題TextView的應該顯示乘法的ListView行EDITTEXT值* TextView的價值。

而在這之後,如果我輸入任何其他EDITTEXT內的任何其他號碼,然後計算將是相同像以前的一個,說乘法EDITTEXT值* TextView的價值的ListView +乘法EDITTEXT值* TextView中值的行一行ListView並在標題textView上顯示此新值。如果更改任何editText的值,則舊位置的前一個值應更新對應的新值對應的位置。 我知道所有這些工作都將在textwatcher中發生,但不知道怎麼做? 你能幫我嗎?

回答

15

我覺得這段代碼將有助於你.....

EditText etSearchBar = (EditText)findViewById(Your_id); 

    etSearchBar.addTextChangedListener(textwatcher); 

    private TextWatcher textwatcher = new TextWatcher() { 

      @Override 
      public void onTextChanged(CharSequence s, int start, int before, 
        int count) { 

      } 

      @Override 
      public void beforeTextChanged(CharSequence s, int start, int count, 
        int after) { 


      } 

      @Override 
      public void afterTextChanged(Editable s) { 

       //Do what ever you want here after you enter each text 
      } 
     }; 
1

在getView方法的Adapter中,setTextChangeListener over editText,並且在TextWatcher的onTextChanged方法中,執行計算,並將setText設置爲textView的頂部。

相關問題