Android Eclipse应用程序删除按钮并自动执行过程

Android Eclipse应用程序删除按钮并自动执行过程,android,eclipse,Android,Eclipse,你好,我有一个adroid应用程序的以下代码 在text3 et3上,当我们按下按钮时,它会在text3字段上返回一个结果。它就像一个计算器 我想删除按钮,这样程序就可以一直运行,而无需按下按钮 enter code here package com.example.b15_calc; import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.view.View

你好,我有一个adroid应用程序的以下代码

在text3 et3上,当我们按下按钮时,它会在text3字段上返回一个结果。它就像一个计算器

我想删除按钮,这样程序就可以一直运行,而无需按下按钮

enter code here
package com.example.b15_calc;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;

public class MainActivity extends Activity {
    EditText et1, et2, et3, et4;

Button b1, b2;



@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    et1 = (EditText) findViewById(R.id.editText1);
    et2 = (EditText) findViewById(R.id.editText2);
    et3 = (EditText) findViewById(R.id.editText3);
    et4 = (EditText) findViewById(R.id.editText4);

    b1 = (Button) findViewById(R.id.button1);
    b2 = (Button) findViewById(R.id.button2);

            //step3 : write add functionality.
            b2.setOnClickListener(new OnClickListener() {

                @Override
                public void onClick(View v) {
                                et1.setText("");
                                et2.setText("");
                                et3.setText("");
                                et4.setText("");


                }
    });

    //step3 : ΜΕΤΑΒΛΗΤΕΣ
    b1.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            String f = et1.getText().toString();
            double i = Double.parseDouble(f);
            String s = et2.getText().toString();
            double j = Double.parseDouble(s);
            String w = et4.getText().toString();
            double q = Double.parseDouble(w);
            double price_gold = 10;
            double fpa = 1.23;
            double fpol = 0.10;
            double fpolam = 999;
            double isot = 100;
            double sint_ker = 10;
            double result1 = (i * price_gold) + (j * 1000) + (q * isot);
            double result2 = result1 / 340.75;
            int gap;

            if (result2 >= fpolam){
                double result = (result2 * fpol);
                double result3 = ((result2 * sint_ker) * fpa) + result;
                if(result3 < 1000)
                {
                  gap = 10;       
                }
                else if(result3 < 5000)
                {
                  gap = 50;
                }
                else //5000+
                {
                  gap = 100;
                }
                int total = (int) Math.ceil(result3 / gap) * gap;




                String res = String.valueOf(total);
                et3.setText(res);
            } else{

                double result3 = ((result2 * sint_ker) * fpa);
                if(result3 < 1000)
                {
                  gap = 10;       
                }
                else if(result3 < 5000)
                {
                  gap = 50;
                }
                else //5000+
                {
                  gap = 100;
                }
                int total = (int) Math.ceil(result3 / gap) * gap;
                String res = String.valueOf(total);
                et3.setText(res);
            }




        }
    });





}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

 }

一种解决方案是通过编程调用按钮

view.performClick()
或者,当您在编辑字段用户TextWatcher中输入任何内容时,如果希望继续计算


对不起,我现在就更改它。您到底想做什么?要删除按钮并在不按按钮的情况下显示结果,您想在哪种情况下显示结果?比如何时停止编辑上次编辑的文本字段?我必须在其中插入view.performClick
yourView.addTextChangedListener (new TextWatcher () {

            @Override
            public void onTextChanged (CharSequence arg0, int arg1, int arg2, int arg3) {

            }

            @Override
            public void beforeTextChanged (CharSequence arg0, int arg1, int arg2, int arg3) {

            }

            @Override
            public void afterTextChanged (Editable val) {

                //fire your calculation method
            }
        });