2011-09-13 80 views
2

我想输入后输入的文本。我已经完成了使用TextWatcherAndroid EditText:输入文字

有一些问题:

例如,我想输入32.5。在该方法中,我想添加到SET<Product>

这里每个&每一批自己的储蓄object.That意味着进入后3及其附加产品的对象为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(); 
    } 
});  

请给我的想法,我们怎样才能获得的EditText输入一次我enetred文字?

回答

6

您可以通过键盘上的“Enter”按钮来输入文本。从Android tutorial

+0

并非总是按下ENTER键。您也可以将焦点切换到另一个字段。 –

0

您不能使用单独的按钮来使用EditText中的值添加对象吗?

+0

No.I有产品清单。如果数量是由用户输入的,则需要添加单独的清单并将其传递给其他活动。 – Piraba

+0

“需要添加单独的列表”是什么意思? – LordTwaroog

+0

如果用户输入特定产品的数量,则需要添加到设置并且想要传递一个活动。如何识别是否输入全文? – Piraba

0

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; 
    } 
}); 

代码扩展EditText类并覆盖onEndBatchEdit实现节能的功能已经在“批”(可以实现某种形式的侦听器接口)的经过编辑之后。