Methods 从void方法中检索值

Methods 从void方法中检索值,methods,overriding,void,Methods,Overriding,Void,我有一个方法: @Override 传感器更改时的公共无效(传感器事件){ 如何从另一个类访问“高度”的值 谢谢您的帮助。您不能,看起来您正在使用java?并且您正在重写一个函数,因此返回它可能不是一个选项 因此,一个简单的解决方案是将海拔高度声明为类变量,而不是在函数中,并提供一个accessor/geter函数 class Someclass { private float altitude; @Override public void onSensorChang

我有一个方法:

@Override
传感器更改时的公共无效(传感器事件){

如何从另一个类访问“高度”的值


谢谢您的帮助。

您不能,看起来您正在使用java?并且您正在重写一个函数,因此返回它可能不是一个选项

因此,一个简单的解决方案是将海拔高度声明为类变量,而不是在函数中,并提供一个accessor/geter函数

class Someclass
{
    private float altitude;

    @Override
    public void onSensorChanged(SensorEvent event) 
    {
        float [] values = event.values;
        altitude = SensorManager.getAltitude(SensorManager.PRESSURE_STANDARD_ATMOSPHERE,values[0]);        
    }

    //function to get altitude
    public float getAltitude()
    {
        return altitude;
    }
}

我正在使用android,我需要检索智能手机传感器(气压计)的值。您的建议始终返回值0。您是否确保删除“浮动高度”函数中的行?您确定它设置正确吗?在调用onSensorChanged函数之前,它将保持为0。我确定这些修改,这里是我访问高度值的类。您是否向“SensorManager.registerListener”注册回拨?这是在真实的手机上还是在模拟器上?手机中有压力传感器吗?是的,我用“SensorMana…”注册了回拨,我使用的是集成了压力传感器的真实手机,这里是类代码
class Someclass
{
    private float altitude;

    @Override
    public void onSensorChanged(SensorEvent event) 
    {
        float [] values = event.values;
        altitude = SensorManager.getAltitude(SensorManager.PRESSURE_STANDARD_ATMOSPHERE,values[0]);        
    }

    //function to get altitude
    public float getAltitude()
    {
        return altitude;
    }
}