public void setState(int state){ this.state = state; }
public void callState(){ //このstateが1と0になり続ける状態を作りたい… System.out.println("come :"+state); } }
を作って、LEDが点灯している、していない状態を管理したいのです。
↑のWikiのLEDFlash.javaの public void thresholdExceeded(IAccelerometer3D accel, int axis, double val, boolean relative) { //閾値より高い値ならばLEDを青色に点滅させる 以降のif文の前者がLEDを点灯させる、else以降がLEDを消灯させるプログラムです。 これは閾値を超えた時だけ呼び出されます。
このifの点灯させる所にst.setState(1);消灯させる所にst.setState(0);を書いても、超えてる時はちゃんと1と0になってるんですが、 放置したら(閾値を超えてない状態)デフォルトの数値のままになってしまいます。(つまり5) 確認はAccelerometerTest.javaクラスの加速度の測定をしているスレッドでst.callState();をして確認をしています。 AccelerometerTest.java、LEDFlash.java、どちらのクラスでもState st = new State(); と書いてるのがマズいんでしょうか…だとしたらどうしたら良いんでしょうか?