【发布时间】:2011-09-20 00:07:22
【问题描述】:
所以我正在寻找一种方法来在按下按钮时获取光传感器的当前值(显然以勒克斯为单位)。这是我用来实现光传感器控制的代码
public class SensorActivity extends Activity implements SensorEventListener
{
private final SensorManager mSensorManager;
private final Sensor mLight;
int minLux = 0;
int currentLux = 0;
int maxLux;
public SensorActivity()
{
mSensorManager = (SensorManager)getSystemService(SENSOR_SERVICE);
mLight = mSensorManager.getDefaultSensor(Sensor.TYPE_LIGHT);
}
protected void onResume()
{
super.onResume();
mSensorManager.registerListener((SensorEventListener) this, mLight, SensorManager.SENSOR_DELAY_NORMAL);
}
protected void onPause()
{
super.onPause();
mSensorManager.unregisterListener((SensorListener) this);
}
public void onAccuracyChanged(Sensor sensor, int accuracy)
{
if(sensor.getType() == Sensor.TYPE_LIGHT)
{
}
}
public void onSensorChanged(SensorEvent event)
{
if( event.sensor.getType() == Sensor.TYPE_LIGHT)
{
}
}
}
我也有这段代码使按钮调用函数
<Button android:layout_width="122px" android:id="@+id/widget35" android:text="Start" android:layout_height="wrap_content" android:layout_x="112dp" android:layout_y="249dp" android:onClick="onButtonDown"></Button>
当应用程序在后台运行时,我如何获取当前的勒克斯值,以及我如何获取按钮按下时的当前勒克斯值并将其存储到int maxLux;?
【问题讨论】:
标签: java android controls sensors