\r
std::string heartStr =\r
(sportdata->heart != 0) ? std::to_string(sportdata->heart) : DEFAULT_DASH;\r
- std::string stepsStr =\r
- (sportdata->steps != 0) ? std::to_string(sportdata->steps) : DEFAULT_DASH;\r
+ // 配速 pc 单位为秒/公里,显示为 分钟'秒"(如 5'30");慢于 60 分钟/公里时显示 --,避免异常递增\r
+ const int PACE_MAX_SEC_PER_KM = 60 * 60; // 60 分钟/公里 = 3600 秒/公里\r
+ std::string paceStr;\r
+ if (sportdata->pc > 0 && sportdata->pc <= PACE_MAX_SEC_PER_KM) {\r
+ int min = sportdata->pc / 60;\r
+ int sec = sportdata->pc % 60;\r
+ std::stringstream ss;\r
+ ss << min << "'" << std::setfill('0') << std::setw(2) << sec << "\"";\r
+ paceStr = ss.str();\r
+ } else {\r
+ paceStr = DEFAULT_DASH;\r
+ }\r
std::string calorieStr = (sportdata->calories != 0)\r
? std::to_string(sportdata->calories)\r
: DEFAULT_DASH;\r
// 训练强度刷新\r
UIResourceTextId intensityid = TraingModel::GetInstance()->GetIntensity();\r
- // printf("intensityid %d \r\n", intensityid);\r
TrainingDetailView::GetInstance()->Get_Intensity_Button()->SetTextId(\r
intensityid);\r
- \r
+\r
TrainingDataView::GetInstance()->GetProgress()->SetValue(\r
sportdata->goaldegree); // 目标完成度\r
TrainingDataView::GetInstance()->GetHeartLabel()->SetText(\r
TrainingDetailView::GetInstance()->GetMileLabel()->SetText(\r
distanceStr.c_str()); // 距离\r
TrainingDetailView::GetInstance()->GetStepLabel()->SetText(\r
- stepsStr.c_str()); // 步数\r
- \r
+ paceStr.c_str()); // 配速(原步数位置)\r
+\r
WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP,\r
- "[Calories: %s, Distance: %s, Steps: %s Intensityid: %d]",\r
- calorieStr.c_str(), distanceStr.c_str(), stepsStr.c_str(),\r
+ "[Calories: %s, Distance: %s, Pace: %s Intensityid: %d]",\r
+ calorieStr.c_str(), distanceStr.c_str(), paceStr.c_str(),\r
intensityid);\r
// 释放sportdata内存\r
}\r
\r
TraingModel::GetInstance()->updata_goal();\r
\r
- // 刷新训练数据:心率、卡路里、距离、步数、训练强度、目标完成度\r
+ // 刷新训练数据:心率、卡路里、距离、配速、训练强度、目标完成度\r
SportData *sportdata = TraingModel::GetInstance()->GetSportdata();\r
RefreshData(sportdata);\r
}\r
DEFAULT_VECTOR_FONT_FILENAME, 30);
InitRollLabel(u_calorielabel, 225, 235, 230, 35, "label4",
STR_CALORIE_SETTING, DEFAULT_VECTOR_FONT_FILENAME, 30);
- InitRollLabel(u_stepslabel, 73, 362, 320, 35, "label3", STR_STEP_SETTING,
+ InitRollLabel(u_stepslabel, 73, 362, 320, 35, "label3", STR_AVG_PACE,
DEFAULT_VECTOR_FONT_FILENAME, 30);
- //多国语言
+ //多国语言:该位置显示配速(原步数)
if (ConfigModel::GetInstance()->GetLanguage() == ZH_CN) {
u_milelabel->SetText("距离(公里");
- u_stepslabel->SetText("步数(步)");
+ u_stepslabel->SetText("配速(分钟/公里)");
u_calorielabel->SetText("卡路里(千卡)");
} else {
u_milelabel->SetText("Distance (km)");
- u_stepslabel->SetText("Steps");
+ u_stepslabel->SetText("Pace (min/km)");
u_calorielabel->SetText("Calorie (kcal)");
}
u_milelabel->SetTextColor(Color::Gray());
DEFAULT_VECTOR_FONT_FILENAME_EN, 65);
InitLabel(calorielabel, 230, 160, 200, 80, "label7", "28312",
DEFAULT_VECTOR_FONT_FILENAME_EN, 65);
- InitLabel(steplabel, 133, 285, 200, 80, "label8", "210.03",
+ InitLabel(steplabel, 133, 285, 200, 80, "label8", "--",
DEFAULT_VECTOR_FONT_FILENAME_EN, 65);
Add(u_milelabel);