0

所以我有这段代码可以解决java(android开发)中的二次方程,它什么也没做!!!!当我按下按钮时,它根本没有给出答案……我什至无法检查它是否正确。

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.support.v4.app.NavUtils;

public class QuadraticEquationSolver extends Activity {
public void main(String[] args){

    Button calc = (Button) findViewById(R.id.Calculate);
    calc.setOnClickListener(new View.OnClickListener() {

        public void onClick(View arg0) {
            EditText X2 = (EditText)findViewById(R.id.X2);
            EditText X = (EditText)findViewById(R.id.X);
            EditText Num = (EditText)findViewById(R.id.Num);
            TextView ans= (TextView) findViewById(R.id.finalans);
            double x2 = Integer.parseInt(X2.getText().toString());
            double x = Integer.parseInt(X.getText().toString());
            double num = Integer.parseInt(Num.getText().toString());
            double finalNum = ((x*-1) + (Math.sqrt((x*x)-(4*x*num))))/(2*x2);
            ans.setText("answer: " + finalNum);

        }
    });
}
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_quadratic_equation_solver);
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.activity_quadratic_equation_solver, menu);
    return true;
}
4

3 回答 3

6

首先,欢迎来到安卓开发。我强烈建议您首先阅读 SDK 文档站点上的App Fundamentals和相关指南,因为它们将极大地帮助您进行新的努力。

Android 不使用单个入口点(即 main 方法),因此不会调用您的代码。您将希望将所有这些代码移动到onCreate().

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_quadratic_equation_solver);

    Button calc = (Button) findViewById(R.id.Calculate);
    calc.setOnClickListener(new View.OnClickListener() {

        public void onClick(View arg0) {
            EditText X2 = (EditText)findViewById(R.id.X2);
            EditText X = (EditText)findViewById(R.id.X);
            EditText Num = (EditText)findViewById(R.id.Num);
            TextView ans= (TextView) findViewById(R.id.finalans);
            double x2 = Integer.parseInt(X2.getText().toString());
            double x = Integer.parseInt(X.getText().toString());
            double num = Integer.parseInt(Num.getText().toString());
            double finalNum = ((x*-1) + (Math.sqrt((x*x)-(4*x*num))))/(2*x2);
            ans.setText("answer: " + finalNum);

        }
    });
}
于 2012-07-03T19:50:17.723 回答
5

我不做任何 android 编程,但我怀疑 Android 会调用你的 main 方法。这个main方法的内容大概在onCreate方法中。

于 2012-07-03T19:48:23.130 回答
4

onCreate()是您main()在 Android 中的等价物。你的main()函数永远不会被调用。的内容main()应该进去onCreate()

于 2012-07-03T19:48:58.430 回答