TraingModel::GetInstance()->Init(); // 训练消息订阅
// 初始化默认首页
ScreenModels::GetInstance()->PreLoadAppimages();
- NativeAbility::GetInstance().SetDefaultSliceId(VIEW_MAIN);
+ //NativeAbility::GetInstance().SetDefaultSliceId(VIEW_MAIN);
// 注册长按重启或关机事件
RebootModel::GetInstance()->RegisterLongPressEvents();
{ConfigDataType::DATATYPE_STRING, "Cat1_ModemVer", "" },//CONFIGMODEL_ITEM_CAT1_MODEMVER,
{ConfigDataType::DATATYPE_STRING, "Cat1_PYVer", "" },//CONFIGMODEL_ITEM_CAT1_PYVER,
{ConfigDataType::DATATYPE_INT, "LanguageID", "-1" },//CONFIGMODEL_ITEM_LANGUAGE_ID, //默认没有选择语言
- {ConfigDataType::DATATYPE_STRING, "LanguageCode", "zh" },//CONFIGMODEL_ITEM_LANGUAGE_CODE, //默认没有选择语言
+ {ConfigDataType::DATATYPE_STRING, "LanguageCode", "" },//CONFIGMODEL_ITEM_LANGUAGE_CODE, //默认没有选择语言
{ConfigDataType::DATATYPE_BOOL, "SlientMode", "false" },//CONFIGMODEL_ITEM_SILENT_MODE,
{ConfigDataType::DATATYPE_INT, "VibratorSwitch", "1" },//CONFIGMODEL_ITEM_VIBRATOR_SWITCH, // 马达 开关,0 强,1 中,2 弱,3 关
// {ConfigDataType::DATATYPE_BOOL, "HRS_QuickAccess", "false"},//CONFIGMODEL_ITEM_HRS_SPO2_QUICKACCESS,
/*
* @Author: luozheng 1732036298@qq.com
* @Date: 2024-03-30 09:14:38
- * @LastEditors: SnickerSun snickersun@163.com
- * @LastEditTime: 2024-04-15 14:59:48
+ * @LastEditors: luozheng 1732036298@qq.com
+ * @LastEditTime: 2024-04-30 10:25:43
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/language/LanguageInit.cpp
*/
#include <fstream>
#include "wearable_log.h"
#include "language/LanguageInit.h"
#include "config/include/ConfigModel.h"
+#include <NativeAbility.h>
namespace OHOS
{
"user/res/font/zh.lang"// AZ,
};
- static language *g_planguage{nullptr};
+ //static language *g_planguage{nullptr};
language::language()
{
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "language::language");
- g_planguage = this;
+ ///g_planguage = this;
}
language::~language()
{
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "language::~language");
- g_planguage = nullptr;
+ //g_planguage = nullptr;
}
language *language::GetInstance()
{
- return g_planguage;
+ static language instance;
+ return &instance;
}
bool language::InitLangues()
* 如果 thelanguage = -1 证明第一次启动,需要实现弹窗切换语言的功能。
* 在此之前,先设置成默认0
*/
- thelanguage = 0;
+ //thelanguage = 0;
+ NativeAbility::GetInstance().SetDefaultSliceId(VIEW_LANGUAGE_SWITCH);
+ }
+ else
+ {
+ NativeAbility::GetInstance().SetDefaultSliceId(VIEW_MAIN);
}
FontGlobalManager::GetInstance()->RegisterLanguageInfo(resFiles, MAX_LANGUAGE, thelanguage);
return true;
// WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "resFiles[language_status]:%s", resFiles[language_status]);
return true;
}
-
- bool language::ChangeLanguage( char *language_code)
+
+ bool language::ChangeLanguage(std::string language_code)
{
if (!FontGlobalManager::GetInstance() || !UIFont::GetInstance())
{
// 获取语言Code对应的语言Id
LanguageId currentLanguageId = LanguageManager::GetInstance().GetLanguageIdByCode(language_code);
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "%d %s", currentLanguageId, language_code);
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "%d %s", currentLanguageId, language_code.c_str());
FontGlobalManager::GetInstance()->RegisterLanguageInfo(resFiles, MAX_LANGUAGE, currentLanguageId);
UIFont::GetInstance()->SetCurrentLangId(currentLanguageId);
- ConfigModel::GetInstance()->SetLanguageCode(language_code);
+ ConfigModel::GetInstance()->SetLanguageCode(language_code.c_str());
ConfigModel::GetInstance()->SetLanguage(currentLanguageId);
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "resFiles[%d]:%s", currentLanguageId, resFiles[currentLanguageId]);
return true;
* @Author: luozheng 1732036298@qq.com
* @Date: 2024-03-30 09:30:03
* @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-04-01 16:00:57
+ * @LastEditTime: 2024-04-30 10:03:25
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/language/LanguageInit.h
*/
#ifndef LANGUAGE_INIT_H
static language *GetInstance();
bool InitLangues();
bool ChangeLanguage(uint32_t);
- bool ChangeLanguage(char *language_code);
+ bool ChangeLanguage(std::string language_code);
bool fileExists(const char *fileName);
};
* @Author: luozheng 1732036298@qq.com
* @Date: 2024-03-28 16:36:58
* @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-03-30 21:10:24
+ * @LastEditTime: 2024-04-30 11:34:16
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/language/include/LanguageSwitchModel.h
*/
#define LANGUAGE_SWITCH_MODEL_H
#include "language/include/LanguageSwitchListAdapter.h"
-#include "config/include/ConfigModel.h"
namespace OHOS
{
public:
static LanguageSwitchModel &GetInstance();
void SetCurLanguageCode(char *curlanguageid);
- char *GetCurLanguageCode(void);
- void SetLastLanguageCode(char *prelanguageid);
- char *GetLastLanguageCode(void);
+ const char *GetCurLanguageCode(void);
+ void SetLastLanguageCode(std::string prelanguageid);
+ const char *GetLastLanguageCode(void);
private:
LanguageSwitchModel();
const LanguageSwitchModel &operator=(const LanguageSwitchModel &) = delete;
static const uint16_t LANGUAGE_ITEM_MAX = MAX_LANGUAGE; // 语言总数
char *CurLanguageCode = "zh"; // 当前语言,默认简体中文
- char *PreLanguageCode = nullptr; // 上一次切换的语言
- ConfigModel *p_ConfigModel{nullptr};
+ std::string PreLanguageCode; // 上一次切换的语言
};
}
* @Author: luozheng 1732036298@qq.com
* @Date: 2024-03-28 14:27:05
* @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-03-30 17:37:29
+ * @LastEditTime: 2024-04-30 11:40:50
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/language/src/LanguageSwitchListAdapter.cpp
*/
#include "language/include/LanguageSwitchListAdapter.h"
// 设置未选中
item->GetUILabelButtonExt()->SetImageSrc(NotSelectedImg, NotSelectedImg);
}
+ item->GetUILabelButtonExt()->Invalidate();
}
return item;
}
* @Author: luozheng 1732036298@qq.com
* @Date: 2024-03-28 16:36:46
* @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-04-01 11:52:27
+ * @LastEditTime: 2024-04-30 11:58:38
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/language/src/LanguageSwitchModel.cpp
*/
#include "language/include/LanguageSwitchModel.h"
#include "wearable_log.h"
#include "language/LanguageInit.h"
+#include "config/include/ConfigModel.h"
namespace OHOS
{
LanguageSwitchModel::LanguageSwitchModel()
{
- p_ConfigModel = ConfigModel::GetInstance();
- // if (p_ConfigModel->GetLanguageCode().c_str() != nullptr)
- {
- //printf("%s\n", p_ConfigModel->GetLanguageCode());
- CurLanguageCode = const_cast<char *>(p_ConfigModel->GetLanguageCode().c_str());
- }
+ // CurLanguageCode = const_cast<char *>(ConfigModel::GetInstance()->GetLanguageCode().c_str());
}
LanguageSwitchModel::~LanguageSwitchModel()
*/
void LanguageSwitchModel::SetCurLanguageCode(char *curlanguagecode)
{
- CurLanguageCode = curlanguagecode;
+ // CurLanguageCode = curlanguagecode;
+ ConfigModel::GetInstance()->SetLanguageCode(curlanguagecode);
}
/*
* @brief 获取当前设置的语言code
*/
- char *LanguageSwitchModel::GetCurLanguageCode(void)
+ const char *LanguageSwitchModel::GetCurLanguageCode(void)
{
- return CurLanguageCode;
+ // return CurLanguageCode;
+ return ConfigModel::GetInstance()->GetLanguageCode().c_str();
}
/*
* @brief 设置上一次语言code
*/
- void LanguageSwitchModel::SetLastLanguageCode(char *prelanguagecode)
+ void LanguageSwitchModel::SetLastLanguageCode(std::string prelanguagecode)
{
PreLanguageCode = prelanguagecode;
}
/*
* @brief 获取上一次设置的语言code
*/
- char *LanguageSwitchModel::GetLastLanguageCode(void)
+ const char *LanguageSwitchModel::GetLastLanguageCode(void)
{
- return PreLanguageCode;
+ return PreLanguageCode.c_str();
}
}
\ No newline at end of file
* @Author: luozheng 1732036298@qq.com
* @Date: 2024-03-28 14:17:43
* @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-04-08 11:21:43
+ * @LastEditTime: 2024-04-30 11:27:38
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/language/src/LanguageSwitchPresenter.cpp
*/
#include "AppViewIDs.h"
if (event.GetDragDirection() == DragEvent::DIRECTION_LEFT_TO_RIGHT)
{
uint16_t preSlice = NativeAbility::GetInstance().GetPreSliceId();
- NativeAbility::GetInstance().ChangeSlice(preSlice);
+ NativeAbility::GetInstance().Back();
}
return true;
}
bool LanguageSwitchPresenter::OnClick(UIView &view, const ClickEvent &event)
{
UNUSED(event);
- char *lastLanguageCode = p_LanguageSwitchModel->GetLastLanguageCode();
+ const char *lastLanguageCode = p_LanguageSwitchModel->GetLastLanguageCode();
UILabelButtonExt *p_UILabelButtonExt = dynamic_cast<UILabelButtonExt *>(&view);
char *id = const_cast<char *>(p_UILabelButtonExt->GetViewId());
- language *g_planguage = new language();
+ language *g_planguage = language::GetInstance();
if (p_UILabelButtonExt != nullptr)
{
return false;
}
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "lastLanguageCode = %s , CurrLanguageCode = %s", p_LanguageSwitchModel->GetLastLanguageCode(), p_LanguageSwitchModel->GetCurLanguageCode());
- // 检查当前语言ID是否已经是点击的语言ID,否则重复点击同一语言不响应切换
- if (p_LanguageSwitchModel->GetCurLanguageCode() == lastLanguageCode)
+ // 检查当前语言ID是否已经是点击的语言ID,否则重复点击同一语言不响应切换
+ if (strcmp(p_LanguageSwitchModel->GetCurLanguageCode(), lastLanguageCode) == 0)
{
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Do not ChangeLanguage!!");
return true;
// 更新上一个语言ID
p_LanguageSwitchModel->SetLastLanguageCode(p_LanguageSwitchModel->GetCurLanguageCode());
}
+ NativeAbility::GetInstance().SetDefaultSliceId(VIEW_MAIN);//暂定选完语言后设置默认的Sliceid为主界面
return true;
}
// 如果是power键,且是亮屏状态,按键释放就返回上一级
if (keyID == static_cast<uint16_t>(ZliteKeyCode::ZLITE_KEY_POWER) && keyState == 0 && uapi_get_screen_state() == 0)
{
- uint16_t preSlice = NativeAbility::GetInstance().GetPreSliceId();
- NativeAbility::GetInstance().ChangeSlice(preSlice);
+ NativeAbility::GetInstance().Back();
}
return true;
}
class PhoneCallView;\r
class PhoneCallPresenter : public Presenter<PhoneCallView>,\r
public UIView::OnClickListener,\r
+ public RootView::OnKeyActListener,\r
public UIView::OnDragListener\r
\r
{\r
// 因为继承了OnClickListener,所以有OnClick属性,至于参数,原函数也这样直接继承;\r
bool OnClick(UIView &view, const ClickEvent &event) override;\r
bool OnDrag(UIView &view, const DragEvent &event) override;\r
+ bool OnKeyAct(UIView &view, const KeyEvent &event) override; // 增加按键事件\r
};\r
} // namespace OHOS\r
\r
\r
class PhoneDirPresenter : public Presenter<PhoneDirView>,\r
public UIView::OnClickListener,\r
+ public RootView::OnKeyActListener,\r
public UIView::OnDragListener\r
{\r
public:\r
// 因为继承了OnClickListener,所以有OnClick属性,至于参数,原函数也这样直接继承;\r
bool OnClick(UIView &view, const ClickEvent &event) override;\r
bool OnDrag(UIView &view, const DragEvent &event) override;\r
+ bool OnKeyAct(UIView &view, const KeyEvent &event) override; // 增加按键事件\r
+ \r
};\r
} // namespace OHOS\r
\r
* @Author: luozheng 1732036298@qq.com
* @Date: 2024-04-28 09:58:04
* @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-04-29 09:24:21
+ * @LastEditTime: 2024-04-29 17:29:25
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/phone/include/TelephonyInitInterface.h
*/
#ifndef TELEPHONY_INIT_INTERFACE_H
#include "components/ui_image_view.h"
#include "iostream"
#include "UiConfig.h"
+#include "gfx_utils/mem_check.h"
+#define DUMPMEMORY 0
namespace OHOS
{
static constexpr const char *PNG_FREQUENTLYCONTACTEDBUTTON_IMAGE = "/user/res/Phone/Telephone/FrequentlyContacted.bin"; // 常用联系人按钮icon图片
static constexpr const char *PNG_TELEPHONELINE_IMAGE = "/user/res/Phone/Telephone/TelephoneLine.bin"; // 线
+ // 拨号方式
+ static constexpr uint8_t DIALINGMETHOD_USINGWATCHSIM = 1; // 手表SIM卡拨号
+ static constexpr uint8_t DIALINGMETHOD_USINGPHONE = 0; // 手机拨号
+
class TelephonyInitInterface
{
public:
- static bool X_DRAG_FLAG; // 水平拖拽标志
+ static bool X_DRAG_FLAG; // 水平拖拽标志
+ static uint8_t DIALINGMETHOD; // 拨号方式
typedef struct
{
* @Author: luozheng 1732036298@qq.com
* @Date: 2024-03-28 14:17:43
* @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-04-29 10:01:43
+ * @LastEditTime: 2024-04-29 17:30:05
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/language/src/DialingMethodPresenter.cpp
*/
#include "AppViewIDs.h"
if (curViewId == USINGWATCHSIMBUTTON_VIEWID)
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "%s OnClick",curViewId.c_str());
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "%s OnClick", curViewId.c_str());
+ TelephonyInitInterface::DIALINGMETHOD = DIALINGMETHOD_USINGWATCHSIM; // 手表SIM卡拨号
+ NativeAbility::GetInstance().EnterSlice(VIEW_PHONECALL);
}
else if (curViewId == USINGPHONEBUTTON_VIEWID)
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "%s OnClick",curViewId.c_str());
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "%s OnClick", curViewId.c_str());
+ TelephonyInitInterface::DIALINGMETHOD = DIALINGMETHOD_USINGPHONE; // 手机拨号
+ NativeAbility::GetInstance().EnterSlice(VIEW_PHONECALL);
}
return true;
}
* @Author: luozheng 1732036298@qq.com
* @Date: 2024-03-28 14:17:43
* @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-04-29 10:02:49
+ * @LastEditTime: 2024-04-29 17:30:31
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/language/src/MainPhonePresenter.cpp
*/
#include "AppViewIDs.h"
if (curViewId == DIALINGMETHODBUTTON_VIEWID)
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "%s OnClick",curViewId.c_str());
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "%s OnClick", curViewId.c_str());
NativeAbility::GetInstance().EnterSlice(VIEW_DIALING_METHOD);
}
else if (curViewId == FREQUENTLYCONTACTEDBUTTON_VIEWID)
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "%s OnClick",curViewId.c_str());
-
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "%s OnClick", curViewId.c_str());
+ NativeAbility::GetInstance().EnterSlice(VIEW_PHONEDIR);
}
return true;
#include "cat1_server_hal.h"\r
#include "PhoneService.h"\r
#include "phone/include/PhoneCallView.h"\r
+#include "phone/include/TelephonyInitInterface.h"\r
+#include "common/key_code.h"\r
+#include <custom_utils.h>\r
namespace OHOS\r
{\r
\r
if (event.GetDragDirection() == DragEvent::DIRECTION_LEFT_TO_RIGHT &&\r
(event.GetDeltaX() > 20) && (event.GetDeltaX() > (2 * MATH_ABS(event.GetDeltaY()))))\r
{\r
- NativeAbility::GetInstance().ChangeSlice(VIEW_PHONE);\r
+ NativeAbility::GetInstance().Back();\r
}\r
\r
\r
// 拨号键\r
//NativeAbility::GetInstance().ChangeSlice(VIEW_PHONERING);\r
//calldial_event_sendmsg_toUI((char *)phoneNumber.c_str());\r
- PhoneCallView::GetInstance()->container_child_SetVisible(true);\r
+ //PhoneCallView::GetInstance()->container_child_SetVisible(true);\r
+ if(TelephonyInitInterface::DIALINGMETHOD == DIALINGMETHOD_USINGWATCHSIM)\r
+ {\r
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "DIALINGMETHOD_USINGWATCHSIM");\r
+ calldial_event_sendmsg_toUI((char *)phoneNumber.c_str());\r
+ }\r
+ else if(TelephonyInitInterface::DIALINGMETHOD == DIALINGMETHOD_USINGPHONE)\r
+ {\r
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "DIALINGMETHOD_USINGPHONE");\r
+ DialCall((unsigned char *)phoneNumber.c_str(),phoneNumber.length());\r
+ }\r
+\r
}\r
else if (strcmp(viewId, BUTTONDEL) == 0)\r
{\r
printf("**************************\n");\r
return true;\r
}\r
+\r
+\r
+ bool PhoneCallPresenter::OnKeyAct(UIView &view, const KeyEvent &event) // 增加按键事件\r
+ {\r
+ UNUSED(view);\r
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "DialingMethodPresenter::OnKeyAct");\r
+ unsigned short keyID = event.GetKeyId();\r
+ unsigned short keyState = event.GetState();\r
+ // 如果是power键,且是亮屏状态,按键释放就返回上一级\r
+ if (keyID == static_cast<uint16_t>(ZliteKeyCode::ZLITE_KEY_POWER) && keyState == 0 && uapi_get_screen_state() == 0)\r
+ {\r
+ NativeAbility::GetInstance().Back();\r
+ }\r
+ return true;\r
+ }\r
}
\ No newline at end of file
// GetView();\r
GetView();\r
RootView::GetInstance()->Add(container_);\r
+\r
+ // 增加按键监听\r
+ RootView::OnKeyActListener *keyactListener = (RootView::OnKeyActListener *)OHOS::PhoneCallPresenter::GetInstance();\r
+ RootView::GetInstance()->SetOnKeyActListener(keyactListener);\r
}\r
\r
void PhoneCallView::OnSetUpView()\r
{\r
View<PhoneCallPresenter>::OnStop();\r
RootView::GetInstance()->RemoveAll();\r
+ RootView::GetInstance()->ClearOnKeyActListener();\r
return;\r
}\r
\r
}\r
if (strcmp(view.GetViewId(), PHONEOFFBUTTON) == 0)\r
{\r
- NativeAbility::GetInstance().ChangeSlice(VIEW_PHONE);\r
+ NativeAbility::GetInstance().ChangeSlice(VIEW_MAIN_PHONE);\r
}\r
return true;\r
}\r
// 根据控件id查找是哪个控件触发了点击回调\r
if (strcmp(view.GetViewId(), OFFBUTTON) == 0)\r
{\r
- NativeAbility::GetInstance().ChangeSlice(VIEW_PHONE);\r
+ NativeAbility::GetInstance().ChangeSlice(VIEW_MAIN_PHONE);\r
}\r
if (strcmp(view.GetViewId(), "button2") == 0)\r
{\r
#include "phone/include/PhoneDirView.h"\r
#include "components/ui_button.h"\r
#include "components/ui_label_button_ext.h"\r
-\r
+#include "common/key_code.h"\r
+#include <custom_utils.h>\r
namespace OHOS\r
{\r
\r
}\r
else\r
{\r
- NativeAbility::GetInstance().ChangeSlice(VIEW_PHONE);\r
+ NativeAbility::GetInstance().Back();\r
}\r
\r
\r
// if (strcmp(view.GetViewId(), 控件ID) == 0)\r
return true;\r
}\r
+\r
+\r
+ bool PhoneDirPresenter::OnKeyAct(UIView &view, const KeyEvent &event) // 增加按键事件\r
+ {\r
+ UNUSED(view);\r
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "DialingMethodPresenter::OnKeyAct");\r
+ unsigned short keyID = event.GetKeyId();\r
+ unsigned short keyState = event.GetState();\r
+ // 如果是power键,且是亮屏状态,按键释放就返回上一级\r
+ if (keyID == static_cast<uint16_t>(ZliteKeyCode::ZLITE_KEY_POWER) && keyState == 0 && uapi_get_screen_state() == 0)\r
+ {\r
+ NativeAbility::GetInstance().Back();\r
+ }\r
+ return true;\r
+ }\r
}
\ No newline at end of file
\r
\r
RootView::GetInstance()->Add(container_);\r
+\r
+ // 增加按键监听\r
+ RootView::OnKeyActListener *keyactListener = (RootView::OnKeyActListener *)OHOS::PhoneDirPresenter::GetInstance();\r
+ RootView::GetInstance()->SetOnKeyActListener(keyactListener);\r
}\r
\r
void PhoneDirView::OnSetUpView()\r
{\r
View<PhoneDirPresenter>::OnStop();\r
RootView::GetInstance()->RemoveAll();\r
+ RootView::GetInstance()->ClearOnKeyActListener();\r
return;\r
}\r
}\r
// 根据控件id查找是哪个控件触发了点击回调\r
if (strcmp(view.GetViewId(), OFFBUTTON) == 0)\r
{\r
- NativeAbility::GetInstance().ChangeSlice(VIEW_PHONE);\r
+ NativeAbility::GetInstance().ChangeSlice(VIEW_MAIN_PHONE);\r
}\r
return true;\r
}\r
namespace OHOS
{
- bool TelephonyInitInterface::X_DRAG_FLAG = false; // 水平拖拽标志
+ bool TelephonyInitInterface::X_DRAG_FLAG = false; // 水平拖拽标志
+ uint8_t TelephonyInitInterface::DIALINGMETHOD = -1; // 默认未选择任何拨号方式
TelephonyInitInterface::TelephonyInitInterface()
{
\r
if (strcmp(view.GetViewId(), "SystemLanguageButton") == 0)\r
{\r
- NativeAbility::GetInstance().ChangeSlice(VIEW_LANGUAGE_SWITCH);\r
+ NativeAbility::GetInstance().EnterSlice(VIEW_LANGUAGE_SWITCH);\r
return true;\r
}\r
\r
if ((event.GetDragDirection() == DragEvent::DIRECTION_LEFT_TO_RIGHT))\r
{\r
SystemPresenter::GetInstance()->set_key_falg(false);\r
- NativeAbility::GetInstance().ChangeSlice(VIEW_SETTING);\r
+ NativeAbility::GetInstance().Back();\r
}\r
return true;\r
}\r
\r
/* -------------------------------------------------------------------------- */\r
// 获取语言类\r
- language *g_planguage = new language;\r
+ //language *g_planguage = new language();\r
/* -------------------------------------------------------------------------- */\r
// 用来监听语言切换\r
bool RadiobuttonOnChangeListener::OnChange(UICheckBox::UICheckBoxState state)\r
{\r
- language *g_planguage;\r
- // static const char *en = "user/res/font/en.lang";\r
- // static const char *zh_CN = "user/res/font/zh.lang";\r
- switch (state)\r
- {\r
- case UICheckBox::SELECTED:\r
- if (isChineseRadioButtonSelected())\r
- {\r
- // 中文文本\r
- g_planguage->ChangeLanguage(LanguageId::ZH_CN);\r
- }\r
- else if (isEnglishRadioButtonSelected())\r
- {\r
- // 英语文本\r
- g_planguage->ChangeLanguage(LanguageId::EN);\r
- }\r
- m_label->SetTextId(0);\r
- // 强制刷新\r
- m_label->ForceResetText();\r
- RootView::GetInstance()->Invalidate();\r
- break;\r
- case UICheckBox::UNSELECTED:\r
- // Handle unselected state if needed\r
- break;\r
- default:\r
- break;\r
- }\r
+ // language *g_planguage;\r
+ // // static const char *en = "user/res/font/en.lang";\r
+ // // static const char *zh_CN = "user/res/font/zh.lang";\r
+ // switch (state)\r
+ // {\r
+ // case UICheckBox::SELECTED:\r
+ // if (isChineseRadioButtonSelected())\r
+ // {\r
+ // // 中文文本\r
+ // g_planguage->ChangeLanguage(LanguageId::ZH_CN);\r
+ // }\r
+ // else if (isEnglishRadioButtonSelected())\r
+ // {\r
+ // // 英语文本\r
+ // g_planguage->ChangeLanguage(LanguageId::EN);\r
+ // }\r
+ // m_label->SetTextId(0);\r
+ // // 强制刷新\r
+ // m_label->ForceResetText();\r
+ // RootView::GetInstance()->Invalidate();\r
+ // break;\r
+ // case UICheckBox::UNSELECTED:\r
+ // // Handle unselected state if needed\r
+ // break;\r
+ // default:\r
+ // break;\r
+ // }\r
return true;\r
}\r
\r
if (keyID == static_cast<uint16_t>(ZliteKeyCode::ZLITE_KEY_POWER) && keyState == 0 && uapi_get_screen_state() == 0)\r
{\r
uint16_t preSlice = NativeAbility::GetInstance().GetPreSliceId();\r
- if (preSlice == VIEW_LANGUAGE_SWITCH)\r
- {\r
- NativeAbility::GetInstance().ChangeSlice(VIEW_SETTING);\r
- return true;\r
- }\r
- NativeAbility::GetInstance().ChangeSlice(preSlice);\r
+ NativeAbility::GetInstance().Back();\r
}\r
}\r
return true;\r
void WeatherModel::TimestampToMonthDayString(time_t timestamp, char *buffer)
{
- // 将时间戳转换成tm结构
- struct tm *timeinfo = localtime(×tamp);
+ // 将时间戳转换成tm结构
+ struct tm timeinfo;
+ localtime_r(×tamp, &timeinfo);
// 格式化输出月份和日期
// 注意: 月份tm_mon从0开始计数,所以显示时需要加1
- sprintf(buffer, "%02d.%02d", timeinfo->tm_mon + 1, timeinfo->tm_mday);
+ sprintf(buffer, "%02d.%02d", timeinfo.tm_mon + 1, timeinfo.tm_mday);
}
// 获取天气图片
* @Author: luozheng 1732036298@qq.com
* @Date: 2024-03-22 10:04:36
* @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-03-30 09:28:18
+ * @LastEditTime: 2024-04-29 20:09:47
* @FilePath: /FD230/code/sdk/application/wearable/service/msg_center/src/notify/pairing_notification.cpp
*/
#include "notification_manager.h"
DeviceUnbindingRequestViewLabel[0]->SetStyle(STYLE_TEXT_FONT, 30);
DeviceUnbindingRequestViewLabel[0]->SetStyle(STYLE_LINE_HEIGHT, 40);
char str[512];
- memcpy(str, 0, 512);
+ memset(str, 0, 512);
sprintf(str, "当前设备已经与 %s 绑定", PairingViewEventListener::GetInstance().GetDeviceName());
DeviceUnbindingRequestViewLabel[0]->SetText(str);
DeviceUnbindingRequestViewLabel[0]->SetLineBreakMode(UILabel::LINE_BREAK_WRAP);
DeviceUnbindingRequestViewLabel[1]->SetPosition(33, y, 400, 300);
DeviceUnbindingRequestViewLabel[1]->SetStyle(STYLE_TEXT_FONT, 30);
DeviceUnbindingRequestViewLabel[1]->SetStyle(STYLE_LINE_HEIGHT, 40);
- memcpy(str, 0, 512);
+ memset(str, 0, 512);
sprintf(str, "继续连接操作会解除与%s的绑定并将手表恢复出厂设置(会清空手表数据)\n\n是否继续此操作\n", PairingViewEventListener::GetInstance().GetDeviceName());
// str = "继续连接操作会解除与 " + GetDeviceName() + " 的绑定并将手表恢复出厂设置(会清空手表数据)\n\n是否继续此操作\n";
DeviceUnbindingRequestViewLabel[1]->SetText(str);