0

可能重复:
微调器开关盒问题

我想为 SpinnerList 使用 Cases 但我不适合我,我搜索了互联网但没有任何帮助。

 public void onMyButtonClick(AdapterView<?> parent,View view, int pos)  
 {                          

        EditText tstrenght = (EditText) findViewById(R.id.Tstrenght);
        //String hello = et.getText().toString();
        int in2 = new Integer(tstrenght.getText().toString());
        EditText scap = (EditText) findViewById(R.id.Scap);
        //String hello = et.getText().toString();
        int in1 = new Integer(scap.getText().toString());
     TextView Uitkomst = (TextView) findViewById(R.id.uitkomst);
     Uitkomst.setText("0.00");
     switch (Integer.parseInt(parent.getItemAtPosition(pos).toString()) {
                case R.string.Scap_prompt = 4:
                {

                    float uitkomst = (float) (((Math.sqrt(7200/(in2)))*100)/100);
                    Uitkomst.setText((String.valueOf(uitkomst)) + " mm");

                    //break;

                }
            }
}
}
4

1 回答 1

0

您没有正确使用 Switch/Case。

switch 语句告诉你要检查什么,看起来没问题,但是 case 应该只是一个值(与 switch 语句进行比较),case 中不应该有比较。(特别是一个没有意义的...... R.String.Scap_prompt 是一个常数,你正在将它与一个常数进行比较,所以它总是以相同的方式评估)。

这就是开关/机箱的外观:

switch (Integer.parseInt(parent.getItemAtPosition(pos).toString()) {           
    case 4:           
    {           
        float uitkomst = (float) (((Math.sqrt(7200/(in2)))*100)/100);           
        Uitkomst.setText((String.valueOf(uitkomst)) + " mm");           
        //break;           
    }           
 }           
于 2012-06-11T12:47:33.543 回答