检查Android中的字符串数组

时间:2012-02-15 06:32:21

标签: android

我创建了一个简单的按钮,在单击时设置EditText。我创建了另一个名为GetTime()的方法,该方法应检查微调器的字符串,然后设置Time变量。然后我的onClick()只是将EditText设置为Time的值。它的代码非常简单。问题是当我if TimerSpin.equals("5 Mins")时,它永远不会改变时间的价值。它仍然是0.所以我不确定我的微调器是否正确检查。但它可以很好地将值打印到EditText。微调器只是我在Strings.xml中创建的StringArray。

package com.Alan.Gym_Rat;

import android.app.Activity;
import android.graphics.Typeface;
import android.os.Bundle;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Spinner;
import android.widget.TextView;
import android.view.*;
import android.view.View.OnClickListener;

public class MainScreen extends Activity implements OnClickListener
{
int Calories = 0;
int Time = 0;
EditText CalText;
Button Calculate;
Spinner TimerSpin;
Spinner ExerSpin;

public void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.mainmenu);

    TextView MainTitle = (TextView) findViewById(R.id.Title);  
    Typeface Molot = Typeface.createFromAsset(getAssets(), "Molot.otf"); 
    MainTitle.setTypeface(Molot);

    ExerSpin = (Spinner)findViewById(R.id.ExerciseSpin);
    TimerSpin = (Spinner)findViewById(R.id.TimeSpin);

    Calculate =(Button)findViewById(R.id.Calc);
    CalText = (EditText)findViewById(R.id.CalcText);

    Calculate.setOnClickListener((OnClickListener)this);

}
public void GetTime()
{
    if(TimerSpin.equals("5 Mins"))
    {
        Time = 5;
    }
    else
    {
        Time = 0;
    }
}

public void onClick(View v) 
{
    if(v.getId() == R.id.Calc)
    {
        GetTime();
        CalText.setText(Time + " Calories");
    }

}
}

1 个答案:

答案 0 :(得分:3)

问题是,您要将SpinnerString进行比较,实际应该Spinner选择String到另一个String ..

通过以下方式纠正此问题:

if(TimerSpin.getSelectedItem().toString().equals("5 Mins"))
{
   // your code...
}