我希望获得输入后的文字。我已经完成了使用TextWatcher
。
有一些问题:
例如我想输入32.5。在那个方法中,我想添加到SET<Product>
。
这里每个&amp;每个数字都是它的保存对象。这意味着在输入3之后它将Product对象添加到SET中,然后添加2然后还添加...
我想避免。完成后输入EditText
,然后想要接受它:
final EditText txtQty = new EditText(this);
txtQty.addTextChangedListener(new TextWatcher() {
public void afterTextChanged(Editable s) {
Log.v("TAG", "afterTextChanged" + s.toString());
String enterdPrice = txtPrice.getText().toString();
double remainQty =0.00;
Product enterdProduct = new Product();
try{
String enteredQty = s.toString();
enterdProduct.setProductCode(txtCode.getText().toString());
enterdProduct.setPrice(Double.parseDouble(enterdPrice));
//enterdProduct.setQty(Double.parseDouble(enteredQty));
// TO-DO
if (productSet.contains(enterdProduct)) {
productSet.remove(enterdProduct);
}
productSet.add(enterdProduct);
System.out.println("SIZE --" + productSet.size());
}
catch (Exception e) {
e.printStackTrace();
}
});
请给我一个想法,我们如何在输入I enetred text后获取EditText?
答案 0 :(得分:6)
您可以在按键盘上的“Enter”按钮时输入文字。
final EditText edittext = (EditText) findViewById(R.id.edittext);
edittext.setOnKeyListener(new OnKeyListener() {
public boolean onKey(View v, int keyCode, KeyEvent event) {
// If the event is a key-down event on the "enter" button
if ((event.getAction() == KeyEvent.ACTION_DOWN) &&
(keyCode == KeyEvent.KEYCODE_ENTER)) {
// Perform action on key press
return true;
}
return false;
}
});
来自Android tutorial的代码
答案 1 :(得分:0)
你不能使用单独的按钮来使用EditText中的值添加对象吗?
答案 2 :(得分:0)
扩展EditText
类并覆盖onEndBatchEdit
以在“批处理”中编辑后实现保存功能(可以实现某种侦听器接口)。