由于 Toast 和 OnSensor Changed 的​​无效组合导致的错误

Error due to invalid combination of Toast and OnSensor Changed

在此显示的错误如下所述。我在网上搜索了正确答案 none is applicable so far。我试图在检测到加速度计读数突然变化时发出一条简单的消息,以检测跌倒。我认为代码中没有任何其他错误,如果有,欢迎您更正。

Error: cannot find symbol method maketext(MainActivity,String,int)

这是我的代码:

@Override
public void onSensorChanged(SensorEvent event) {
    if (started) {
        double x = event.values[0];
        double y = event.values[1];
        double z = event.values[2];
        long timestamp = System.currentTimeMillis();
        Data data = new Data(timestamp, x, y, z);
        sensorData.add(data);
    }

    if(event.sensor.getType()==Sensor.TYPE_ACCELEROMETER){
        double gacc=SensorManager.STANDARD_GRAVITY;
        double a=event.values[0];
        double b=event.values[1];
        double c=event.values[2];
        long mintime=System.currentTimeMillis();
        boolean min = false;
        boolean max = false;
        int m = 0;
        double xyz=Math.round(Math.sqrt(Math.pow(a,2)+Math.pow(b,2)+Math.pow(c,2)));

        if(xyz<=3.0){
            min = true;
        }
        if(min==true){
            m++;
            if(xyz>=14){
                max=true;
            }
        }
        if(min && max==true){
            Toast.maketext(MainActivity.this,"FALL DETECTED!",Toast.LENGTH_LONG).show();
            m=0;
            min=false;
            max=false;
        }
        if (m>4) {
            m=0;
            min=false;
            max=false;
        }
    }
}

您正在呼叫 maketext 而不是 makeText。注意驼峰式。

替换为:

 Toast.makeText(MainActivity.this,"FALL DETECTED!",Toast.LENGTH_LONG).show();

更正后,请确保您使用的是 android.widget.Toast