아래 근접센서 소스의 결과가 x=1.0, y=0.0, z=0.0 이런 결과로 나오고 있습니다.

 

1. 이것을 x=0 이 아니라 만보기처럼 단순히 1과 같이 숫자로만 나오게 할려면 소스를 어떻게 수정해야 합니까?

2. 또한  숫자가 0과 1만 반복되는데 카운트가 증가되게 할려면 어떻게 해야 합니까?(소스 예시로 좀 부탁)

 

답변 부탁드릴께요 ㅠㅠ 워낙 초보라 막막합니다.

 

   public class pushup extends Activity implements SensorEventListener{
private static final String TAG = "Sensor";
     SensorManager sm;
     SensorEventListener proxL;
     Sensor proxSensor;

     float maxAccX;
     float maxAccY;
     float maxAccZ;
     TextView prox;

   @Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.pushup);
   sm = (SensorManager)getSystemService(SENSOR_SERVICE);
   proxSensor = sm.getDefaultSensor(Sensor.TYPE_PROXIMITY); 

/*proxL = new proxListener();*/

    prox = (TextView)findViewById(R.id.count05);
    maxAccX = -10;
    maxAccY = -10;
    maxAccZ = -10;
    }
  
    @Override
public void onResume() {
super.onResume();
    sm.registerListener(this, proxSensor, SensorManager.SENSOR_DELAY_NORMAL);
    }
   
    @Override
public void onPause() {
super.onPause();
    sm.unregisterListener(this);
    }
    @Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
// TODO Auto-generated method stub
    }
   
    @Override
public void onSensorChanged(SensorEvent event) {
// TODO Auto-generated method stub
    synchronized (this){
    float var0 = event.values[0];
    float var1 = event.values[1];
    float var2 = event.values[2];

    switch(event.sensor.getType()){
    case Sensor.TYPE_PROXIMITY:
    prox.setText("x = " + var0 +" , y = " + var1 + " , z = " + var2);
   
    if(maxAccX < var0)
    maxAccX = var0;
    if(maxAccY < var1)
    maxAccY = var1;
    if(maxAccZ < var2)
    maxAccZ = var2;
   
    prox.setText("x = " + var0 +" , y = " + var1 + " , z = " + var2);
    Log.e(TAG, "TYPE_PROXIMITY : x = " + var0 +" , y = " + var1 + " , z = " + var2);
    break;
      }
    }
  }
}