From: Caisking <3449750381@qq.com> Date: Mon, 15 Jul 2024 06:22:51 +0000 (+0800) Subject: 修复卡片管理界面添加卡片点击失灵bug X-Git-Tag: release_V1.2.70_20241020_135402~807^2~13 X-Git-Url: http://git.snicker.com.cn/css/static/gitweb.css?a=commitdiff_plain;h=b233a4061c1e982a1ffa3e95d248b62899c53cc1;p=mirrors%2FFD230.git 修复卡片管理界面添加卡片点击失灵bug --- diff --git a/code/sdk/application/wearable/fd230app/nativeui/main/src/MainModel.cpp b/code/sdk/application/wearable/fd230app/nativeui/main/src/MainModel.cpp index c6a9eddbf..a9cf3d08f 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/main/src/MainModel.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/main/src/MainModel.cpp @@ -177,9 +177,6 @@ namespace OHOS { /*设置卡片类型为false cardsetting 重新遍历map里面为ture的卡片{表盘必须存在}*/ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "DeleteCardSetting"); - // WEARABLE_LOGD(WEARABL_LOG_MODULE_APP, "删除卡片:cardSettings[%d] is %d \r\n", index + 1, cardSettings[index + 1]); - // printCardSettings(); - char temp[CARD_SETTING_VALUE_LEN] = {0}; if (cardSettingCount > CARD_SETTING_COUNT_MAX) { @@ -233,6 +230,7 @@ namespace OHOS cardSettingCount = mapindex; // 更新存储内容 + char temp[CARD_SETTING_VALUE_LEN] = {0}; for (uint8_t k = 0; k < cardSettingCount; k++) { (void)sprintf_s(temp + strlen(temp), CARD_SETTING_VALUE_LEN, "%d,", cardSettings[k]); @@ -246,8 +244,7 @@ namespace OHOS void MainModel::AddCardSetting(uint8_t index) { /*设置卡片类型为ture cardsetting 重新遍历map里面为ture的卡片{表盘必须存在}*/ - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AddCardSetting"); - char temp[CARD_SETTING_VALUE_LEN] = {0}; + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "AddCardSetting"); if (cardSettingCount > CARD_SETTING_COUNT_MAX) { @@ -259,10 +256,22 @@ namespace OHOS { return; } + // 设置map里面的属性 + int count = sizeof(cardInfoSet) / sizeof(cardInfoSet[0]); + for (uint8_t i = 0; i < count; i++) + { + // 需要被添加的卡片 因为添加是显示所有卡片,所以是使用map + if (cardInfoMap[index].id == cardInfoSet[i].id) + { + cardInfoSet[i].isVisible = true; + WEARABLE_LOGD(WEARABL_LOG_MODULE_APP, "添加卡片:cardSettings[%d] is %d \r\n", index, cardInfoMap[index].id); + WEARABLE_LOGD(WEARABL_LOG_MODULE_APP, "设置添加卡片属性:cardInfoSet[%d] is %d \r\n", i, cardInfoSet[i].isVisible); + } + WEARABLE_LOGD(WEARABL_LOG_MODULE_APP, "cardInfoSet[%d]:id%d\r\n", i, cardInfoSet[i].id); + } // 设置map里面的属性 int mapindex = 0; - for (uint8_t i = 0; i < (sizeof(cardInfoSet) / sizeof(cardInfoSet[0])); i++) { if (mapindex == 0) @@ -270,13 +279,6 @@ namespace OHOS /* 表盘卡片[不被卡片管理,必须设置] */ cardSettings[mapindex++] = WATCH_FACE; } - // 需要被添加的卡片 因为添加是显示所有卡片,所以是使用map - if (cardInfoMap[index].id == cardInfoSet[i].id) - { - cardInfoSet[i].isVisible = true; - WEARABLE_LOGD(WEARABL_LOG_MODULE_APP, "添加卡片:cardSettings[%d] is %d \r\n", index, cardInfoMap[index].id); - WEARABLE_LOGD(WEARABL_LOG_MODULE_APP, "设置添加卡片属性:cardInfoSet[%d] is %d \r\n", i, cardInfoSet[i].isVisible); - } // 设置其他卡片 if (cardInfoSet[i].isVisible) { @@ -290,6 +292,7 @@ namespace OHOS cardSettingCount = mapindex; // 更新存储内容 + char temp[CARD_SETTING_VALUE_LEN] = {0}; for (uint8_t j = 0; j < cardSettingCount; j++) { (void)sprintf_s(temp + strlen(temp), CARD_SETTING_VALUE_LEN, "%d,", cardSettings[j]);