我有这段代码:
public class Chronom extends Activity
{
Chronometer mChronometer;
ProgressBar progre;
int total=1;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
//layout
setContentView(R.layout.main7watingscreen);
//Start Chronometer
mChronometer = (Chronometer) findViewById(R.id.chrono1);
mChronometer.start();
progre = (ProgressBar) findViewById(R.id.progressBar1);
MyCount counter = new MyCount(31000,300);
counter.start();
}
public class MyCount extends CountDownTimer
{
public MyCount(long millisInFuture, long countDownInterval)
{
super(millisInFuture, countDownInterval);
}
@Override
public void onFinish()
{
Intent myIntent = new Intent( Chronom.this, MainMenu.class);
startActivityForResult(myIntent, 0);
}
@Override
public void onTick(long millisUntilFinished)
{
total++;
progre.setProgress(total);
}
}
我希望在矢量中存储加速度计值(x,y和z)(可以是其他形式,我想知道你的意见)。
但是我想在进度条正在填充的同时执行此操作(它在30秒后停止)。比如在1秒开始存储并在30秒后停止。
如果您不理解我的问题,请说出来,我会更好地解释。
怎么做?请帮忙!
答案 0 :(得分:1)
通过onSensorChanged()
回调,您可以在每次更改时获取传感器值(请参阅SensorListener参考)。 您无法在设定的时间查询传感器数据。
有一种解决方法:让监听器在每次更改时保存值(即在onSensorChanged()
方法内),并使用计时器查询这些保存的值。例如,您可以使用static float[]
数组或SharedPreferences
值。