San*_*man 16 android textwatcher android-edittext
我有一个EditText.当我点击它时,它变得可聚焦.我将输入要输入EditText的输入文本.我想为EditText实现一个监听器,这样当我停止输入时,它应该自动将该文本保存到数据库中而不是一个按钮.如何让EditText的监听器听取是否停止输入?
jai*_*nal 53
试试这样吧.
EditText et = (EditText)findViewById(R.id.editText);
Log.e("TextWatcherTest", "Set text xyz");
et.setText("xyz");
et.addTextChangedListener(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) {
Log.e("TextWatcherTest", "afterTextChanged:\t" +s.toString());
}
});
Run Code Online (Sandbox Code Playgroud)
vaj*_*vin 16
设置edittext imeOption
editText.setImeOptions(EditorInfo.IME_ACTION_DONE);
Run Code Online (Sandbox Code Playgroud)
通过使用这样的东西,
editText.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
if (actionId == EditorInfo.IME_ACTION_DONE) {
// Specify your database function here.
return true;
}
return false;
}
});
Run Code Online (Sandbox Code Playgroud)
或者,您可以使用该OnEditorActionListener接口来避免匿名内部类.
小智 5
将此添加到您的editText
et1.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
// TODO Auto-generated method stub
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
}
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
32462 次 |
| 最近记录: |