如何设置车速表Android应用程序的速度限制?

时间:2015-04-07 02:00:39

标签: java android

对于我的地区科学展,我正在为Android制作速度计应用程序,我想设置速度限制。这是我遇到问题的代码:

     public void onLocationChanged(Location location) {
    TextView txt = (TextView) this.findViewById(R.id.textView1);


    if (location==null)
    {
        txt.setText("-.- km/h");
    }
    else if (location == 1.50)
    {
        txt.setText("Warning");
    }
    else 
    {
        float nCurrentSpeed = location.getSpeed();
        txt.setText(nCurrentSpeed*3.6 + " km/h");
    }

}

我想这样做,当速度为1.50 km / h时,它会将文本更改为“警告”。我一直在Incompatible operand types Location and double。我试过这个

    else if (nCurrentSpeed == 1.50)
{
    txt.setText("Warning");
}

但它仍然给我同样的错误,但修改了Incompatible operand types float and double。有没有关于如何解决这个问题或如何为速度表创建速度限制的提示?

2 个答案:

答案 0 :(得分:2)

location对象不仅仅是一个原始对象,而且这里的内容不知道。

但是根据以后的代码,您显示它已

location.getSpeed()

所以将代码更改为

else if (location.getSpeed() == 1.50)

我还建议您使用>= 1.5

答案 1 :(得分:1)

不应该像

那样
public void onLocationChanged(Location location) {
    TextView txt = (TextView) this.findViewById(R.id.textView1);


    if (location==null)
    {
        txt.setText("-.- km/h");
    }
    else if (location.getSpeed() >= 1.50f)
    {
        txt.setText("Warning");
    }
    else 
    {
        float nCurrentSpeed = location.getSpeed();
        txt.setText(nCurrentSpeed*3.6 + " km/h");
    }

}

即。你需要比较location.getSpeed()和1.5,而不是整个位置对象