2013-08-27 51 views
5

在我的應用程序中,我有一個edittext將包含一個用戶(從db帶來)。 可能有多個用戶出現在編輯文本中的方式如下:UserX,UserY,UserZ退格刪除整個單詞(實體),而不是每個字母/字符

我想讓虛擬鍵盤功能的退格按照點擊的方式刪除整個用戶,而不是每個角色。

任何提示如何做到這一點?因爲我在搜索時沒有找到任何東西。 (也許我使用了錯誤的關鍵字)

+0

您是否找到解決方案? – Andrea

回答

1

東西,我建議你使用一個SpannableString。這裏是一個完整的指南:link。祝你好運 !

1

您需要查看偵聽器以編輯文本。

然後,當用戶按下退格鍵時,刪除直到找到空格爲止,方法可能是使用lastIndexOf()方法。

所以,你getText()EditText,你substring()它,直到最後一個空格字符,採取的字符串,並將其設置爲新的文本

1

在此行的代碼,你可以做任何你想做的時候退格按鈕按下。像editText.setText("");

editText.setOnKeyListener(new OnKeyListener() {     
    @Override 
    public boolean onKey(View v, int keyCode, KeyEvent event) { 
     //You can identify which key pressed buy checking keyCode value with KeyEvent.KEYCODE_ 
     if(keyCode == KeyEvent.KEYCODE_DEL){ 
      //this is for backspace 
      } 
    return false;  
     } 
}); 
+0

有沒有辦法在軟件鍵盤上使用它? – horro

相關問題