2012-03-18 84 views
0

我無法弄清楚如何動態設置EditText文本。一個在stackoverflow的用戶建議我使用onTextChanged(),但我不這樣做。所以我讀了一個小時,並試圖實現它時,錯誤錯誤錯誤! 所以,我再次問這個問題。EditText動態設置文本

我有兩個EditTexts et1和et2。這兩種類型都是NumberDecimal .et2是unfocusableunclickable。用戶只能在et1中輸入值。我想要的是隻要用戶在et1中輸入一個數字,該數字就應該顯示在et2.So中,如果用戶有要輸入10,他將首先輸入1,並且該1也應該顯示在et2中。現在完成編號,他將輸入0,然後編號10應顯示在et2.so中,et2應逐字符更新在et1中進入。

這是我從ET1閱讀:

et1=(EditText) findViewById(R.id.et1); 
et2=(EditText) findViewById(R.id.et2); 
String read=et1.getText().toString(); 
if(read.length()!=0) 
{ 
float a=Float.parseFloat(read); 
} 

現在,如果我用setText()上ET2,這不會是動態的,而且我將不得不使用一個button的展現在ET2文本,並將其將顯示在et1中輸入的整個String,直到按鈕被點擊。

在et1上使用Listener是一個好主意,但我不知道它的實現,因爲我是一個新手。

請幫忙。

感謝您的期待。

回答

1

使用下面的代碼

final TextView et2 = new TextView(this); 
     TextView et1 = new TextView(this){ 
      @Override 
      protected void onTextChanged(CharSequence text, int start, 
        int before, int after) { 
       // TODO Auto-generated method stub 
       super.onTextChanged(text, start, before, after); 
       et2.setText(this.getText()); 
      } 
     }; 

現在這些ET1,ET2添加到任何佈局。

+0

這不能與EditTexts一起使用? – Exorcist 2012-03-18 20:12:35

+0

它可以同時添加。 – Pavandroid 2012-03-19 02:29:48