我正在尝试编写一个应用程序,它允许您计算一个圆圈。我做了一个主要布局和第二个布局。主要布局:activity_main 第二个布局:kreislay
不要对这些奇怪的词汇感到好奇,我是德国人。
这是我的代码:
public class MainActivity extends ActionBarActivity {
public Button kreisd;
public Button kugeld;
public Button kreiscalc;
public Context con;
public EditText radius_eingabe = null;
public TextView kreis_ergebnis_vol;
public TextView kreis_ergebnis_G;
public String str1;
public double st1;
public double G_kreis;
public static final double PI = 3.141592653589793d;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final LayoutInflater factory = getLayoutInflater();
final LayoutInflater factory_main = getLayoutInflater();
final View view2 = factory.inflate(R.layout.kreislay, null);
final View main_view = factory_main.inflate(R.layout.activity_main, null);
kreisd = (Button)findViewById(R.id.kreis);
kugeld = (Button)main_view.findViewById(R.id.kugel);
kreiscalc = (Button)view2.findViewById(R.id.calc_kreis);
kreisd.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
con = MainActivity.this;
setContentView(R.layout.kreislay);
}
});
kreiscalc.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
con = MainActivity.this;
radius_eingabe = (EditText) view2.findViewById(R.id.editText);
str1 = radius_eingabe.getText().toString();
st1 = Double.parseDouble(str1);
G_kreis = PI*st1*st1;
kreis_ergebnis_G = (TextView)view2.findViewById(R.id.G_kreis);
kreis_ergebnis_G.setText(String.valueOf(G_kreis));
}
});
}
我的问题是,它不起作用。当我按下按钮来计算圆圈时,虽然我输入了一个半径,但没有任何反应。 LogCat中没有错误代码。我需要帮助。我的意思是,圆的面积是= Pi * r ^ 2,不是吗? 谢谢你的关注。
答案 0 :(得分:-2)
也许这个?
public static final double PI = 3.141592653589793d;
我认为最后的“d”是错误的。 希望它有所帮助