我对android很新,所以如果我问一个死的简单问题,请原谅我。
基本上我想做的是显示一个数字。当Y的值时,event.value [1]介于1和7之间。
我可以显示X Y Z位置的值。但是只要我添加if语句来检查我的应用程序是否停止工作(参见下面的代码)
我真的需要有人帮忙。
感谢您的帮助。
public void onSensorChanged(SensorEvent event) {
// TODO Auto-generated method stub
float x = event.values[0];
float y = event.values[1];
float z = event.values[2];
int YValueMin = 1;
int YValueMax = 7;
accelero.setText("X: "+event.values[0]+
"\nY: "+event.values[1]+
"\nZ: "+event.values[2]);
if (y >= YValueMin && y <= YValueMax ){
RepCounter.setText("1");
}
else {
RepCounter.setText(" ");
}
}
答案 0 :(得分:2)
logcat在崩溃时会说什么?
您的RepCounter
极有可能为空,您可以使用调试器进行检查。
编辑:请将您的代码更改为以下内容,这可能是一个解决方案。如果没有,我将需要完整的源代码,以确保RepCounter不是类或未初始化的对象。
public void onSensorChanged(SensorEvent event)
{
if(event.sensor.getType() == Sensor.TYPE_ACCELEROMETER)
{
float x = event.values[0];
float y = event.values[1];
float z = event.values[2];
int YValueMin = 1;
int YValueMax = 7;
accelero.setText("X: " + event.values[0] + "\nY: " + event.values[1] + "\nZ: " + event.values[2]);
if(y >= YValueMin && y <= YValueMax)
{
RepCounter.setText("1");
}
else
{
RepCounter.setText(" ");
}
}
}