0

我正在编写一个简单的程序来计算化学公式 PV=nRT 的未知数。R 是一个常数 8.31。

用户可以输入 3 条数据(来自 4 个可能的编辑文本框)并从单选按钮中选择他们想要计算的内容。我已经放入了故障保险,因此如果该框为空白,则使用标准条件。我已经制定了如何计算每种情况的答案,但没有将其显示在适当的文本框中。

这是 XML 布局

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <EditText
        android:id="@+id/editText4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/editText3"
        android:layout_below="@+id/editText3"
        android:layout_marginTop="27dp"
        android:ems="10" />
etc x 4


    <RadioGroup
        android:id="@+id/radioGroup1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_alignTop="@+id/button1"
        android:layout_marginRight="33dp" >

        <RadioButton
            android:id="@+id/radio0"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:checked="true"
            android:text="@string/pressure" />
etc x 4
    </RadioGroup>

</RelativeLayout>

这是来自 java 类的脚本:

     public void onCreate(Bundle savedInstanceState) {
                  super.onCreate(savedInstanceState);
                  setContentView(R.layout.activity_main);
                  pressure = (EditText) findViewById(R.id.editText1);
                  volume = (EditText) findViewById(R.id.editText2);
                  moles = (EditText) findViewById(R.id.editText3);
                  temperature= (EditText) findViewById(R.id.editText4);

                  return; }


                  public void onClick(View view) { 
                         switch (view.getId()) { 
                  case R.id.button1:
                         RadioButton pressureButton = (RadioButton)
                               findViewById(R.id.radio0); 
                  RadioButton volumeButton = (RadioButton) 
                               findViewById(R.id.radio1); 
                  RadioButton molesButton = (RadioButton) 
                               findViewById(R.id.radio2);
                  RadioButton temperatureButton = (RadioButton) 
                               findViewById(R.id.radio3); 
                  return;
                         }
                  float pressuren = Float.parseFloat(pressure.getText().toString());
                  float volumen = Float.parseFloat(volume.getText().toString());
                  float molesn = Float.parseFloat(moles.getText().toString());
                  float temperaturen = Float.parseFloat(temperature.getText().toString());

             //to allow for blank editText boxes

                  if (pressuren == 0) {pressuren = 100000;
                               }
                  if (volumen == 0) {volumen = (float)0.0247;
                               }
                  if (molesn == 0) {molesn= 1;
                               }
                  if (temperaturen == 0) {temperaturen = 298;

                  }

             //to calculate pressure

                 if (pressureButton.isChecked()) {
                           float pressans = (float) (molesn * 8.31 * temperaturen ) / volumen;
                 float volans = (float) volumen;
                 float moleans = (float) molesn;
                 float temperaturans = (float) temperaturen;
                 }
etc x 4

对不起所有的代码,

我想在editText1框等中显示压力

非常感谢任何帮助。

4

1 回答 1

1

所以你想设置一个文本框的文本?用这个:

pressure.setText(yourfloatvalue.toString());
于 2013-06-21T08:39:40.780 回答