From: 罗正 <1732036298@qq.com> Date: Wed, 20 Nov 2024 14:50:36 +0000 (+0000) Subject: Merge #1433 into sdk602patch0911 from refs/changes/1433/head X-Git-Tag: fd230_release_V1.3.102~44^2~10 X-Git-Url: http://git.snicker.com.cn/css/static/gitweb.css?a=commitdiff_plain;h=986f4875c49f318d93f9361cffb2d52d4a05c5b9;p=mirrors%2FFD230.git Merge #1433 into sdk602patch0911 from refs/changes/1433/head Code review from 罗正 * refs/changes/1433/head: (13 commits squashed) - applsit拨号盘实现:目前,滑动一下屏幕APP转动一次,后续优化为多次转动 - 解决倒计时界面内存泄漏问题 - Merge branch 'sdk602patch0911' of https://codeup.aliyun.com/64191456b9581d62e8f81ac0/FD230 into sdk602patch0911 - Merge branch 'sdk602patch0911' of https://codeup.aliyun.com/64191456b9581d62e8f81ac0/FD230 into sdk602patch0911 - 修改显示方式页面多国语言显示问题 - Merge branch 'sdk602patch0911' of https://codeup.aliyun.com/64191456b9581d62e8f81ac0/FD230 into sdk602patch0911 - 解决查找手表后变成长亮屏 - Merge branch 'sdk602patch0911' of https://codeup.aliyun.com/64191456b9581d62e8f81ac0/FD230 into sdk602patch0911 - 拨号盘样式,实现跟手滑动效果 - Merge branch 'sdk602patch0911' of https://codeup.aliyun.com/64191456b9581d62e8f81ac0/FD230 into sdk602patch0911 - 解决ChatGPT,设置Key后不能用问题 - 修改拨号盘图片显示bug - Merge branch 'sdk602patch0911' of https://codeup.aliyun.com/64191456b9581d62e8f81ac0/FD230 into sdk602patch0911 Signed-off-by: 罗正 <1732036298@qq.com> Reviewed-by: Caisking <3449750381@qq.com> Reviewed-by: 罗正 <1732036298@qq.com> Reviewed-by: aliyun8003852482 <1224667075@qq.com> Reviewed-by: snickersun@163.com Reviewed-by: aliyun6865282430 <1624952103@qq.com> Merged-by: Caisking <3449750381@qq.com> CR-link: https://codeup.aliyun.com/64191456b9581d62e8f81ac0/FD230/change/1433 --- diff --git a/code/sdk/application/wearable/fd230app/nativeui/applist/src/ApplistView.cpp b/code/sdk/application/wearable/fd230app/nativeui/applist/src/ApplistView.cpp index 783764575..5772aeb9c 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/applist/src/ApplistView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/applist/src/ApplistView.cpp @@ -671,6 +671,7 @@ static void updateCircleListAndSelectImageForDirectClockwise(UIImageView** Circl } WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "circleIndex:%d,appIndex:%d name:%s", circleIndex, appIndex, ApplistModel::GetInstance().GetApplistItems()[appIndex].iconSmall); + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "startangle大于0的顺时针%d:circleIndex:%d,appIndex:%d name:%s",nextstartangle, circleIndex, appIndex,ApplistModel::GetInstance().GetApplistItems()[appIndex].iconSmall); CircleListAPP[circleIndex]->SetSrc(ApplistModel::GetInstance().GetApplistItems()[appIndex].iconSmall); CircleListAPP[circleIndex]->SetViewIndex(ApplistModel::GetInstance().GetApplistItems()[appIndex].id); @@ -693,7 +694,7 @@ static void updateCircleListAndSelectImageForDirectClockwise(UIImageView** Circl } } - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "[curselectImageIndex,preselectImageIndex]:[%d,%d]", curselectImageIndex, preselectImageIndex); + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "nextstartangle:%d,startangle大于0的顺时针:[%d,%d] name:%s", nextstartangle,curselectImageIndex, preselectImageIndex,ApplistModel::GetInstance().GetApplistItems()[curselectImageIndex].iconLarge); CircleListSelectImage_->SetSrc(ApplistModel::GetInstance().GetApplistItems()[curselectImageIndex].iconLarge); CircleListSelectImage_->SetViewIndex(ApplistModel::GetInstance().GetApplistItems()[curselectImageIndex].id); ApplistModel::GetInstance().SetCurselectImageIndex(curselectImageIndex); @@ -709,18 +710,26 @@ static void updateCircleListForClockwiseNotDirect(UIImageView** CircleListAPP, int& preselectImageIndex, int nativeAppNum) { - int prevStartAngle = startangle + angleIncrement; - if (prevStartAngle % 30 == 0) + if(startangle % 30 == 0) { - int appIndex = (12 - (prevStartAngle) / 30) % nativeAppNum; - int circleIndex = appIndex % 12; + int prevStartAngle = startangle + 30; + int tempIndex = prevStartAngle / 30; + int appIndex = (12 - tempIndex) % nativeAppNum; + if(startangle >= 360) + { + if (appIndex <= 0) + { + appIndex = (- appIndex + 11) % nativeAppNum; + } + } + + // 计算 circleIndex + int circleIndex = (12 - tempIndex) % 12; if (circleIndex < 0) { circleIndex += 12; } - if (appIndex < 0) { - appIndex = (- appIndex + 11) % nativeAppNum; - } WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "circleIndex:%d,appIndex:%d name:%s", circleIndex, appIndex, ApplistModel::GetInstance().GetApplistItems()[appIndex].iconSmall); + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "startangle大于0的逆时针%d:circleIndex:%d,appIndex:%d name:%s",startangle,circleIndex, appIndex,ApplistModel::GetInstance().GetApplistItems()[appIndex].iconSmall); CircleListAPP[circleIndex]->SetSrc(ApplistModel::GetInstance().GetApplistItems()[appIndex].iconSmall); CircleListAPP[circleIndex]->SetViewIndex(ApplistModel::GetInstance().GetApplistItems()[appIndex].id); } @@ -754,7 +763,7 @@ static void updateCircleListForClockwiseNotDirect(UIImageView** CircleListAPP, preselectImageIndex = (preselectImageIndex - 1 + nativeAppNum) % nativeAppNum; } } - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "[curselectImageIndex->preselectImageIndex]:[%d->%d]", curselectImageIndex,preselectImageIndex); + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "startangle:%d,startangle大于0的逆时针:[%d,%d] name:%s", startangle,curselectImageIndex, preselectImageIndex,ApplistModel::GetInstance().GetApplistItems()[curselectImageIndex].iconLarge); CircleListSelectImage_->SetSrc(ApplistModel::GetInstance().GetApplistItems()[curselectImageIndex].iconLarge); CircleListSelectImage_->SetViewIndex(ApplistModel::GetInstance().GetApplistItems()[curselectImageIndex].id); ApplistModel::GetInstance().SetCurselectImageIndex(curselectImageIndex); @@ -770,21 +779,23 @@ static void updateCircleListAndSelectImageForCounterclockwiseNotDirect(UIImageVi int& preselectImageIndex, int nativeAppNum) { - int absStartAngle = abs(startangle - (30 - angleIncrement)); - if (absStartAngle % 30 == 0) { - int index = (absStartAngle / 30) % nativeAppNum + 11; + + int absnextStartAngle = abs(startangle - (30 - angleIncrement)); + if (absnextStartAngle % 30 == 0) { + int index = (absnextStartAngle / 30) % nativeAppNum + 11; int appIndex = index; - if (absStartAngle >= 360) { + if (absnextStartAngle >= 360) { appIndex = index % nativeAppNum; } - int circleIndex = ((absStartAngle - 30) / 30 ) % 12; + int circleIndex = ((absnextStartAngle - 30) / 30 ) % 12; WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "circleIndex:%d,appIndex:%d name:%s", circleIndex, appIndex, ApplistModel::GetInstance().GetApplistItems()[appIndex].iconSmall); + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "startangle小于0的逆时针:circleIndex:%d,appIndex:%d", circleIndex, appIndex); CircleListAPP[circleIndex]->SetSrc(ApplistModel::GetInstance().GetApplistItems()[appIndex].iconSmall); CircleListAPP[circleIndex]->SetViewIndex(ApplistModel::GetInstance().GetApplistItems()[appIndex].id); preselectImageIndex = curselectImageIndex; curselectImageIndex = (curselectImageIndex + 1) % nativeAppNum; - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "[curselectImageIndex->preselectImageIndex]:[%d->%d]", curselectImageIndex, preselectImageIndex); + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "absnextStartAngle:%d,startangle小于0的逆时针:[%d,%d]", absnextStartAngle,curselectImageIndex, preselectImageIndex); CircleListSelectImage_->SetSrc(ApplistModel::GetInstance().GetApplistItems()[curselectImageIndex].iconLarge); CircleListSelectImage_->SetViewIndex(ApplistModel::GetInstance().GetApplistItems()[curselectImageIndex].id); ApplistModel::GetInstance().SetCurselectImageIndex(curselectImageIndex); @@ -805,12 +816,13 @@ static void updateCircleListAndSelectImageForCounterclockwiseDirect(UIImageView* int appIndex = (absStartAngle / 30) % nativeAppNum ; int circleIndex = (absStartAngle / 30) % 12; WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "circleIndex:%d,appIndex:%d name:%s", circleIndex, appIndex, ApplistModel::GetInstance().GetApplistItems()[appIndex].iconSmall); + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "startangle小于0的顺时针:circleIndex:%d,appIndex:%d", circleIndex, appIndex); CircleListAPP[circleIndex]->SetSrc(ApplistModel::GetInstance().GetApplistItems()[appIndex].iconSmall); CircleListAPP[circleIndex]->SetViewIndex(ApplistModel::GetInstance().GetApplistItems()[appIndex].id); curselectImageIndex = preselectImageIndex; preselectImageIndex = (preselectImageIndex - 1 + nativeAppNum) % nativeAppNum; - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "[curselectImageIndex->preselectImageIndex]:[%d->%d]", curselectImageIndex, preselectImageIndex); + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "absStartAngle:%d,startangle小于0的顺时针:[%d,%d]", absStartAngle,curselectImageIndex, preselectImageIndex); CircleListSelectImage_->SetSrc(ApplistModel::GetInstance().GetApplistItems()[curselectImageIndex].iconLarge); CircleListSelectImage_->SetViewIndex(ApplistModel::GetInstance().GetApplistItems()[curselectImageIndex].id); ApplistModel::GetInstance().SetCurselectImageIndex(curselectImageIndex); @@ -841,7 +853,7 @@ static void updateCircleListAndSelectImageWhenStartangleZero(UIImageView** Circl CircleListAPP[circleIndex]->SetSrc(ApplistModel::GetInstance().GetApplistItems()[appIndex].iconSmall); curselectImageIndex = preselectImageIndex; - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "[curselectImageIndex->preselectImageIndex]:[%d->%d]", curselectImageIndex, preselectImageIndex); + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "startangle等于0:[%d,%d]", curselectImageIndex, preselectImageIndex); CircleListSelectImage_->SetSrc(ApplistModel::GetInstance().GetApplistItems()[curselectImageIndex].iconLarge); CircleListSelectImage_->SetViewIndex(ApplistModel::GetInstance().GetApplistItems()[curselectImageIndex].id); ApplistModel::GetInstance().SetCurselectImageIndex(curselectImageIndex);