2014-10-30 65 views
0

我想將文本附加到android EditText視圖,但我希望該文本不在彈出編輯器中。爲了清楚我想把單位放在EditText中。因此,例如「10加侖」,但是當彈出編輯器顯示時,我只想看到並編輯「10」。然後當這個值返回時,我想把「加侖」附加到視圖上。將文本附加到Android TextView但不可編輯

這是可能的自動方式,還是我必須跟蹤onTouch()事件,並有一個監聽鍵盤和手動追加單位?

+0

任何原因,你不會把單位作爲一個標籤旁邊的edittext視圖?或者作爲「提示」,如「輸入加侖數」? – nPn 2014-10-30 22:50:49

+0

那麼,我需要單位保持膠粘的價值(如1空間或2空格分開)。我想我會創建一個新的小部件,它是可以處理2個文本值的textview的擴展。 – Batdude 2014-10-31 00:35:46

回答

0

我相信EditText視圖的onFocusChange方法會檢測用戶何時編輯文本字段。嘗試這樣的東西..

EditText et = (EditText) findViewById(R.id.editText); 

    et.setOnFocusChangeListener(new View.OnFocusChangeListener() { 
     @Override 
     public void onFocusChange(View view, boolean b) { 
      if (b) { 
       ((EditText)view).setText(String.valueOf(value)); 
      } else { 
       value = Integer.valueOf(((EditText)view).getText().toString()); 
       ((EditText)view).setText(value + " gallons"); 
      } 
     } 
    }); 
+0

感謝您的回覆。是的,這可能會起作用,或者類似的東西。但我想我會嘗試創建一個新的小部件,即textView的擴展。一旦我得到它的工作,我會再次發佈。 – Batdude 2014-10-31 00:38:01

+0

對不起,我假定你的意思是你正在使用EditText視圖。如果你想要一個帶有類似功能的彈出式對話框的TextView,那麼在子類化TextView和在onTouch()中實現它可能是一條可行的路。 – 2014-10-31 02:32:27

+0

不,不好意思,那是我的錯。我的意思是EditText,而不是TextView。我編輯了原始問題。 – Batdude 2014-10-31 14:32:43

相關問題