重置步数并从0开始计算步骤

时间:2017-02-02 12:57:39

标签: android android-sensors

我有一个计步器可以完美地计算设备传感器的步数。我想在移动到另一个活动时将步骤计数重置为0,并从0开始步骤计数而不是之前的步骤计数。

我试图保存我的初始步数并从当前传感器数据中减去它,但步骤不计算它只显示0和1。

这是我的代码:

Activity1.java 
  private  String Initial_Count_Key = "FootStepInitialCount";  
 public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
SharedPreferenceManager.singleton().save(Initial_Count_Key,total_step);}

这是我的活动2,我想重置我的步骤。我也为它写了一个方法,但我认为我做错了。

Activity2.java
 private void countStep() {

        mIntialSteps = (SharedPreferenceManager.singleton().getInt("FootStepInitialCount"));
        mUpdatedSteps = StepDetector.CURRENT_SETP - mIntialSteps;
        Log.i("Updated_Steps", String.valueOf(mUpdatedSteps));

        if (mUpdatedSteps % 2 == 0) {
            mStepCountValue = mUpdatedSteps;

        } else {
            mStepCountValue = mUpdatedSteps + 1;
        }

        mStepCountValue = mUpdatedSteps ;

    }

有人能告诉我我做错了吗?

1 个答案:

答案 0 :(得分:0)

从您的代码中我可以看到您在共享首选项中存储步骤计数。所以如果你要转移到另一个活动。就在为新活动写下意图之前。将总步数设为零

SharedPreferenceManager.singleton()保存(Initial_Count_Key,0);

然后转到其他活动。这样,当您回到此活动时,yui将初始化您的UI,即您的步数UI来自此首选项值