2011-09-15 35 views
8

我想清除EditText中的文字,并将其保存在数据库中。如何清除edittext中的文字

这里是我的代码:

pictureDescription.addTextChangedListener(new TextWatcher() 
{ 
    public void afterTextChanged(Editable textValue) 
    { 
    String content = textValue.toString(); 
    db.updatePicDes(content,lastSnapId); 

    } 
} 
+0

你怎么能确定用户是否已经完成了整个文本的输入,或者他刚刚停下来喝一杯咖啡? – Umesh

+0

为输入到edittext中的每个字符调用'afterTextChanged'。所以你的代码会保存多个副本,并在后面添加一个字符。 – Ronnie

回答

0
pictureDescription.addTextChangedListener(new TextWatcher() { 
    public void afterTextChanged(Editable textValue) { 
      String content = textValue.toString(); 
      db.updatePicDes(content,lastSnapId); 
      pictureDescription.setText(""); 
    } 
} 
10

只要将它设置为空字符串。我认为它应该这样做。

EditText editText = (EditText)findViewById(R.id.edit_text); 
editText.setText(""); 
0
String content = textValue.toString(); 
db.updatePicDes(content,lastSnapId); 
editText.setText(""); 
1

您做的更好,在FocusChangedListener如果你想DONOT它点击一个按钮。

2

可以使用EditText.setText("");

12

使用editText.getText().clear()

+2

这是执行此操作的正确方法。因为它允许显示任何占位符文本。 –