如何在android中创建带边框的动态表

时间:2011-09-07 12:36:59

标签: android android-layout

我有动态表。当用户输入数量时,值(TextView)应更新(数量*价格)。 我的问题是我正在创建TextView&动态EditText。如何获得TextView的ID?

 EditText txtQty = new EditText(this);
        txtQty.setId(i);
        txtQty.setVisibility(1);
        txtQty.setHint("0.00");
        txtQty.setInputType(InputType.TYPE_NUMBER_FLAG_DECIMAL);

        tr.addView(txtQty); 
        InputMethodManager mgr = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
        mgr.showSoftInput(txtQty, InputMethodManager.SHOW_IMPLICIT);

        ((InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE))  
        .hideSoftInputFromWindow(txtQty.getWindowToken(), 0);

        txtQty.addTextChangedListener(new TextWatcher() {
            public void afterTextChanged(Editable s) { 
                Log.v("TAG", "afterTextChanged" + s.toString());
            }

            public void beforeTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) {
                Log.v("TAG", "beforeTextChanged");
            }

            public void onTextChanged(CharSequence s, int start, int before, int count) {
                Log.v("TAG", "onTextChanged");
            }
        });

        TextView txtVal = new TextView(this);
        txtVal.setTextSize(1, 12);
        createView(tr, txtVal,"0.00");

afterTextChanged()方法中,我想设置值(txtVal),例如txtVal .setText(215847.00);

我们如何在txtVal方法中调用afterTextChanged()

1 个答案:

答案 0 :(得分:2)

尝试在txtVal之前声明addTextChangedListener()。您可能需要将txtVal声明为final TextView txtVal。然后,您应该能够设置txtVal

的文本