2014-02-20 80 views
0

我正在製作一個應用程序,我想要一個數字作爲接近傳感器附近的東西,就像我將手指放在傳感器上時它在textview上顯示1一樣,如果我再次顯示它,則顯示2和等等。我無法弄清楚在onSensorChanged上使用什麼條件。接近傳感器和onSensorChanged

public void onSensorChanged(SensorEvent event) { 
    // TODO Auto-generated method stub 
    try{ 
     if(event.values[0] < event.sensor.getMaximumRange()){ 
      for (i=(int) event.values[0];i<=100;i++) 
      Toast.makeText(getApplicationContext(), "" +i, Toast.LENGTH_LONG).show(); 

      tv.setText(i); 

     } 


    }catch(Exception e){ 
     e.printStackTrace(); 
    } 
} 

我不能得到的TextView和烤麪包的值保持在遞增

回答

1

試試這個值...

@Override 
public void onSensorChanged(SensorEvent event) { 
    if(event.values[0] < event.sensor.getMaximumRange()) { 
     // Object is near to the Sensor. increment the value 
    } 
} 

,並根據您的代碼

private int nearCount; // global variable. 

@Override 
public void onSensorChanged(SensorEvent event) { 
    if (event.values[0] < event.sensor.getMaximumRange()) { 
     nearCount++; 
     Toast.makeText(getApplicationContext(), "Count = "+nearCount, Toast.LENGTH_SHORT).show(); 
    } 
} 
+0

你能解釋更多 – Karma5

+1

@ Karma5請看這裏http://developer.android.com/guide/topics/sensors/sensor s_position.html –

+0

你可以檢查代碼並告訴我該怎麼辦 – Karma5