private void updateSplits(long cumulativeTime, int cummulativeDistance, boolean reset) { MyLog.i("RaceTimerFragment", "updateSplits for Athlete " + mAthleteNumber); List<Split> splits = new ArrayList<>(); if (reset) { tvAthletePace.setText(getActivity().getString(R.string.header_pace)); } else { // gets the splits associated with the race Uuid splits = Split.getAllSplits(mRaceUuid, false); String paceAndDistance = CommonMethods.getAveragePaceString( cumulativeTime, cummulativeDistance, mPaceDistance, mPoolLengthUnits); if (mIsClockRunning) { paceAndDistance = paceAndDistance + CommonMethods.getEstimatedTotalDistance( cumulativeTime, cummulativeDistance, mEventDurationMs, mPoolLengthUnits); } tvAthletePace.setText(paceAndDistance); } mSplitArrayAdapter.setData(splits); mSplitArrayAdapter.notifyDataSetChanged(); }
private void startRace() { MyLog.i("RaceTimerFragment", "startRace for Athlete " + mAthleteNumber); if (mSplitArrayAdapter.getCount() > 0) { resetSplits(); } disableAthlete(); showSplitButton(); mSelectedSwimEvent = MainActivity.getSelectedSwimEvent(); mLapNumber = 0; mPreviousCummulativeTime = 0; mIsClockRunning = true; mRaceUuid = UUID.randomUUID().toString(); switch (mAthleteNumber) { case 1: MySettings.setAthlete1RaceUuid(mRaceUuid); break; case 2: MySettings.setAthlete2RaceUuid(mRaceUuid); break; } }