【发布时间】:2015-01-07 09:09:35
【问题描述】:
我正在尝试使用 Sensor.Type_Light 或光传感器来检测 event.values[0] 的变化。
@Override
public void onSensorChanged(SensorEvent event) {
if (event.sensor.getType()== Sensor.TYPE_LIGHT) {
debugView = (TextView)findViewById(R.id.lightValue);
debugView.setText("Detecting...." +event.values[0]);
}
如您所见,这些值显示在 TextView 中。此外,我们知道如果 event.values[0] 为 0,则没有光,并且随着光的增加,值也会增加。 现在我的问题是:如何使用这个 event.values[0] 来检测光线的显着变化,也就是说,如果我在足够的光线下激活我的传感器(event.values[0] >15),它应该能够触发灯关闭时的事件(event.values[0]
提前致谢
我在 onSensorChanged 中尝试了以下方法,但似乎没有任何效果。
if(event.values[0] >= 0 && event.values[0] <5) {
// No Light
if(event.values[0] > 10) {
callForHelp();
}
}
else {
if(event.values[0] > 15) {
// Light On
if(event.values[0] < 5) {
callForHelp();
}
}
}
【问题讨论】:
-
'似乎没有任何效果' - 你到底是什么意思?此外,您的第一个条件是从 0 到 5 的值,然后您检查值 > 10,这永远不会是真的。与第二个条件相同,您检查值 > 15,然后在内部检查值
-
哦,是的..我明白了。再试一次,谢谢
标签: android sensors light-sensor