switch (event) {
case BUTTON_PWR_PRESS:
+ // #ifdef SUPPORT_POWER_MANAGER
+ // if (!lcd_get_status()) {
+ // button_report_event_to_pms();
+ // return;
+ // }
+ // button_report_event_to_pms();
+ // #endif
+ button_report_event_to_gui(id, 1); // 1:press
+ break;
+ case BUTTON_PWR_CLICKUP:
#ifdef SUPPORT_POWER_MANAGER
if (!lcd_get_status()) {
button_report_event_to_pms();
}
button_report_event_to_pms();
#endif
- button_report_event_to_gui(id, 1); // 1:press
- break;
- case BUTTON_PWR_CLICKUP:
button_report_event_to_gui(id, 0); // 0:release
break;
case BUTTON_PWR_LONGPRESS_3S:
* @Author: luozheng 1732036298@qq.com
* @Date: 2024-06-20 14:44:22
* @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-08-31 16:13:42
+ * @LastEditTime: 2024-10-23 11:22:25
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/aivoice/include/AiVoicePresenter.h
*/
#ifndef AI_VOICE_PRESENTER_H
#include "View.h"
#include "ui_resource_string.h"
#include "components/ui_time_picker.h"
+#include "ModelListenerSample.h"
namespace OHOS
{
class AiVoiceView;
public UIView::OnDragListener,
public RootView::OnKeyActListener,
public UIPicker::SelectedListener,
- public UIView::OnTouchListener
+ public UIView::OnTouchListener,
+ public ModelListenerSample
{
public:
typedef enum : uint8_t
void OnResume() override;
void OnPause() override;
void OnStop() override;
+ void Notify() override;
+ void calculateChatContentItemViewHeight(std::string text, bool flag);
bool JumpToReturnResultTextView(void);
bool ChangeToAIVoiceListeningView(bool val);
AiVoiceModel *model;
bool X_DRAG_FLAG{false};
+
+ int preHeight{0};
+ bool isScroll{false};
};
}
* @Author: luozheng 1732036298@qq.com
* @Date: 2024-06-20 15:14:50
* @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-10-19 18:26:01
+ * @LastEditTime: 2024-10-23 14:19:17
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/aivoice/src/AiVoiceModel.cpp
*/
#include "aivoice/include/AiVoiceModel.h"
WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "GetChatContentListCount() - 1 = %d,line = %d", GetChatContentListCount() - 1, __LINE__);
// 将更新后的 AI 回答内容添加到列表
adapter->GetChatContentItem().push_back(chatTtems[GetChatContentListCount() - 1]);
+ if (AiVoicePresenter::GetInstance())
+ AiVoicePresenter::GetInstance()->calculateChatContentItemViewHeight(chatTtems[GetChatContentListCount() - 1].text, true);
p_AivoiceReturnResultTextView->GetChatContentList()->RefreshList();
}
else
if (errnote.empty()) // 如果没有回应数据
{
WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "AiVoiceModel::GetErrnote is empty!!");
- AiVoiceModel::GetInstance().SetErrnote("response data is empty");
+ AiVoiceModel::GetInstance().SetErrnote("响应内容为空");
std::string str = AiVoiceModel::GetInstance().GetErrnote();
SendMsgToUIService(UI_AI_JUMP_TO_RESPONDERR_VIEW, 0, (void *)str.c_str(), str.length());
return;
if (Time < 0) // 如果思考时间超时30s,进入连接超时界面
{
AiVoiceModel::GetInstance().AIVoice_StopTimer();
- AiVoiceModel::GetInstance().SetErrnote("The connection timed out. Please restart the conversation");
+ AiVoiceModel::GetInstance().SetErrnote("连接超时,请重新开始对话");
std::string str = AiVoiceModel::GetInstance().GetErrnote();
SendMsgToUIService(UI_AI_JUMP_TO_RESPONDERR_VIEW, 0, (void *)str.c_str(), str.length());
}
// 蓝牙的连接状态判断,如果AI思考过程中途断连,直接弹窗提示,不在硬等
if (get_ble_connect() == false)
{
- AiVoiceModel::GetInstance().SetErrnote("ble is disconnected");
+ AiVoiceModel::GetInstance().SetErrnote("手机蓝牙已断开");
std::string str = AiVoiceModel::GetInstance().GetErrnote();
SendMsgToUIService(UI_AI_JUMP_TO_RESPONDERR_VIEW, 0, (void *)str.c_str(), str.length());
}
void AiVoiceModel::reset_ai_screen60s_timer_time()
{
SCREEN_60S_TIME = 60;
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "reset_ai_screen60s_timer_time %d",SCREEN_60S_TIME);
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "reset_ai_screen60s_timer_time %d", SCREEN_60S_TIME);
if (nullptr == g_screen60s_timer)
{
ScreenAlwaysOnCtr(OPEN_SCREEN_ALWAYS_ON); // 重新常亮屏
}
static osTimerId_t g_ai_is_ready_Handle = nullptr; // 处理查询AI是否就绪定时器
- static uint8_t AI_IS_READY_TIMEOUT = 5; // 5s钟超时
+ static uint8_t AI_IS_READY_TIMEOUT = 5; // 5s钟超时
static void AI_IS_READY_CallbackProc(int data)
{
if (AI_IS_READY_TIMEOUT <= 0) // 模型连接失败有5秒超时
* @Author: luozheng 1732036298@qq.com
* @Date: 2024-06-20 15:11:17
* @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-10-21 18:35:53
+ * @LastEditTime: 2024-10-23 15:07:12
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/aivoice/src/AiVoicePresenter.cpp
*/
#include "AppViewIDs.h"
bool AiVoicePresenter::JumpToReturnResultTextView(void)
{
WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "AiVoicePresenter::JumpToReturnResultTextView");
- if (view_->GetAiVoiceScrollView(AIVOICE_THINKING_VIEWID) != nullptr && view_->GetAiVoiceScrollView(AIVOICE_THINKING_VIEWID)->IsVisible())
+ if (view_->GetAiVoiceScrollView(AIVOICE_THINKING_VIEWID) != nullptr &&
+ view_->GetAiVoiceScrollView(AIVOICE_THINKING_VIEWID)->IsVisible())
{
+ preHeight = 0;
ChangeViewAndLogicOperator(AIVOICE_THINKING_VIEWID, AIVOICE_RETURN_RESULT_TEXT_VIEWID);
}
else
{
UNUSED(event);
WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "AiVoicePresenter::OnClick");
-
- model->reset_ai_screen60s_timer_time();//重置60s取消常亮屏timer
+
+ model->reset_ai_screen60s_timer_time(); // 重置60s取消常亮屏timer
if (strcmp(view.GetViewId(), AIVOICE_IMGAE_VIEW_ID) == 0) /*点击的是Ai模型就切换模型*/
{
model->SetSelectAiModel(picker.GetSelected());
view_->ChangeAiModelAndUpdateComponentsStatus();
}
+
+ // 计算聊天内容ItemView的高度
+ void AiVoicePresenter::calculateChatContentItemViewHeight(std::string text, bool flag)
+ {
+ const char *Text = text.c_str();
+ UILabel label;
+ label.SetPosition(53, 100);
+ label.Resize(flag ? 280 : 200, 60);
+ label.SetStyle(STYLE_TEXT_FONT, 26);
+ label.SetStyle(STYLE_LINE_HEIGHT, 30);
+ label.SetText(Text);
+ label.SetLineBreakMode(UILabel::LINE_BREAK_WRAP);
+ label.SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER);
+ label.SetFont(DEFAULT_VECTOR_FONT_FILENAME_EN, 26);
+
+ if (label.GetTextHeight() > preHeight)
+ {
+ preHeight = label.GetTextHeight();
+ isScroll = true;
+ }
+ return;
+ }
+
+ //监听高度是否变化
+ void AiVoicePresenter::Notify()
+ {
+ if ((view_->GetAiVoiceScrollView(AIVOICE_RETURN_RESULT_TEXT_VIEWID) != nullptr) &&
+ (view_->GetAiVoiceScrollView(AIVOICE_RETURN_RESULT_TEXT_VIEWID)->IsVisible()))
+ {
+ if (isScroll)
+ {
+ // 监听,让List实现滚动
+ AivoiceReturnResultTextView::GetInstance()->GetChatContentList()->ScrollBy(-150);
+ isScroll = false;
+ }
+ }
+ return;
+ }
}
\ No newline at end of file
* @Author: luozheng 1732036298@qq.com
* @Date: 2024-05-07 11:25:58
* @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-08-01 10:12:28
+ * @LastEditTime: 2024-10-23 14:58:03
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/AiVoice/src/AivoiceReturnResultTextView.cpp
*/
#include "aivoice/include/AiVoicePresenter.h"
chatContentList->SetTouchable(true);
chatContentList->SetDraggable(true);
chatContentList->SetThrowDrag(true);
- chatContentList->SetReboundSize(REBOUNDSIZE);
+ // chatContentList->SetReboundSize(REBOUNDSIZE);
chatContentList->SetMaxScrollDistance(MAX_SCR_DIS);
chatContentList->SetSwipeACCLevel(800); // 800: compensation distance
chatContentList->SetDragACCLevel(5); // 5: drag acceleration
chatContentList->SetRotateFactor(2);
chatContentList->RequestFocus();
- chatContentList->SetIntercept(true);
+ // chatContentList->SetIntercept(true);
chatContentList->SetAdapter(chatContentListAdapter);
chatContentList->RefreshList();
/* -------------------------------------------------------------------------- */
\r
void AlarmPresenter::UpdateAlarmInfoByAppSet(void)\r
{\r
- NativeAbility::GetInstance().Back();\r
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);\r
}\r
\r
void AlarmPresenter::RefreshAlarmStatus(int i)\r
if (group != nullptr) {
container[0] = group;
RootView::GetInstance()->Add(container[0]);
+ container_ = group;
}
// show timerView
WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "MainAlarmView::OnStop");
View<AlarmPresenter>::OnStop();
- if (container_ != nullptr) {
- container_->RemoveAll();
- delete container_;
- container_ = nullptr;
- }
+ // if (container_ != nullptr) {
+ // container_->RemoveAll();
+ // delete container_;
+ // container_ = nullptr;
+ // }
group->RemoveAll();
RootView::GetInstance()->ClearOnKeyActListener();
RootView::GetInstance()->RemoveAll();
// uint16_t preSlice = AlarmClockModel::GetInstance()->JudgePreSlice();
WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "MainAlarmView::DropView::container[MAIN_INTERFACE]");
// NativeAbility::GetInstance().ChangeSlice(preSlice);
- NativeAbility::GetInstance().Back();
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
}
}
WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "AlipayPresenter::ClickExitAlipay start");\r
// uint16 preSlice = NativeAbility::GetInstance().GetPreSliceId();\r
// NativeAbility::GetInstance().ChangeSlice(preSlice);\r
- NativeAbility::GetInstance().Back();\r
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);\r
return;\r
}\r
\r
(event.GetDeltaX() > (2 * MATH_ABS(event.GetDeltaY())))) {
/*在主界面进行退出*/
if (&view == p_AssistantView->GetAssistantScrollView(ASSISTANT_MAIN_VIEW)) {
- NativeAbility::GetInstance().Back();
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
}
/*在其他界面返回主界面*/
if (&view ==
// 如果是power键,且是亮屏状态,按键释放就返回上一级
if (keyID == static_cast<uint16_t>(ZliteKeyCode::ZLITE_KEY_POWER) &&
keyState == 1 && uapi_get_screen_state() == 0) {
- NativeAbility::GetInstance().Back();
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
}
return true;
}
}
void BloodDetectionPresenter::NavigateBack()
{
- NativeAbility::GetInstance().Back(TransitionType::TRANSITION_ZOOM);
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
}
void BloodDetectionPresenter::OnStart()
{
if (event.GetDragDirection() == DragEvent::DIRECTION_LEFT_TO_RIGHT)
{
// NativeAbility::GetInstance().ChangeSlice(VIEW_APPLIST);
- NativeAbility::GetInstance().Back(TransitionType::TRANSITION_ZOOM);
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
return true;
}
return false;
keyState == 1 && uapi_get_screen_state() == 0)
{
// NativeAbility::GetInstance().ChangeSlice(VIEW_APPLIST);
- NativeAbility::GetInstance().Back(TransitionType::TRANSITION_ZOOM);
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
}
return true;
}
HealthState highHealthState;
highHealthState.checkType = CHARGE;
HealthService::GetInstance()->SetHealthCurrent(highHealthState);
- NativeAbility::GetInstance().ChangeSlice(VIEW_CHECK_INVALID, TransitionType::TRANSITION_ZOOM);
+ NativeAbility::GetInstance().ChangeSlice(VIEW_CHECK_INVALID, TransitionType::TRANSITION_BACK_TO_HEXAGONS);
}
else
{
- NativeAbility::GetInstance().EnterSlice(VIEW_BLOOD_CHECK, TransitionType::TRANSITION_ZOOM);
+ NativeAbility::GetInstance().EnterSlice(VIEW_BLOOD_CHECK, TransitionType::TRANSITION_BACK_TO_HEXAGONS);
}
}
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodPresenter::OnClick");
if (event.GetDragDirection() == DragEvent::DIRECTION_LEFT_TO_RIGHT)
{
if(event.GetPreLastPoint().x-event.GetStartPoint().x>150)
- NativeAbility::GetInstance().Back();
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
}
return true;
}
group->SetOnDragListener(dragListener);
RootView::GetInstance()->Add(group);
+ container_ = group;
if(!button_init())
{
if (event.GetDragDirection() == DragEvent::DIRECTION_LEFT_TO_RIGHT)
{
if(event.GetPreLastPoint().x-event.GetStartPoint().x>100)
- NativeAbility::GetInstance().Back();
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
}
if (event.GetDragDirection() == DragEvent::DIRECTION_BOTTOM_TO_TOP)
{
group->SetOnDragListener(dragListener);
RootView::GetInstance()->Add(group);
+ container_ = group;
if(!Label_init())
{
* @Author: luozheng 1732036298@qq.com
* @Date: 2024-04-10 17:32:38
* @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-10-10 11:31:51
+ * @LastEditTime: 2024-10-23 18:16:39
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/flashligh/src/FlashlightPresenter.cpp
*/
// 如果是power键就返回上一级
if (keyID == static_cast<uint16_t>(ZliteKeyCode::ZLITE_KEY_POWER) && keyState == 1 && uapi_get_screen_state() == 0)
{
- NativeAbility::GetInstance().Back();
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
}
return true;
}
UNUSED(view);
if (event.GetDragDirection() == DragEvent::DIRECTION_LEFT_TO_RIGHT && MaingoalPresenter::X_DRAG_FLAG)
{
- NativeAbility::GetInstance().Back();
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
X_DRAG_FLAG = false;
}
return true;
// 如果是power键就返回上一级
if (keyID == static_cast<uint16_t>(ZliteKeyCode::ZLITE_KEY_POWER) && keyState == 1 && uapi_get_screen_state() == 0)
{
- NativeAbility::GetInstance().Back();
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
}
return true;
}
* @Author: luozheng 1732036298@qq.com
* @Date: 2024-01-29 15:37:44
* @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-05-10 11:31:08
+ * @LastEditTime: 2024-10-23 18:23:40
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/weather/src/MaingoalrView.cpp
*/
#include "goal/include/Maingoalview.h"
void MaingoalrView::OnStart()
{
View<MaingoalPresenter>::OnStart();
- RootView::GetInstance()->Add(GetGoalPageView());
+ SetContainerView(new UIViewGroup());
+ if (GetContainer() == nullptr)
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "container_ new fail!!");
+ return;
+ }
+ container_->SetPosition(0, 0, Screen::GetInstance().GetWidth(), Screen::GetInstance().GetHeight());
+ container_->SetTouchable(true);
+ container_->SetDraggable(true);
+ container_->Add(GetGoalPageView());
+ // RootView::GetInstance()->Add(GetGoalPageView());
if (goalSwipeViewList != nullptr)
{
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "MaingoalrView OnStop!!");
View<MaingoalPresenter>::OnStop();
+ if(container_ != nullptr)
+ {
+ container_->RemoveAll();
+ delete container_;
+ container_ =nullptr;
+ }
RootView::GetInstance()->ClearOnKeyActListener();
RootView::GetInstance()->RemoveAll();
}
void HeartChartPresenter::NavigateBack()
{
- NativeAbility::GetInstance().Back(TransitionType::TRANSITION_ZOOM);
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
}
void HeartChartPresenter::OnStart()
{
}
void HeartDetectionPresenter::NavigateBack()
{
- NativeAbility::GetInstance().Back(TransitionType::TRANSITION_ZOOM);
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
}
void HeartDetectionPresenter::OnStart()
{
if (event.GetDragDirection() == DragEvent::DIRECTION_LEFT_TO_RIGHT)
{
// NativeAbility::GetInstance().ChangeSlice(VIEW_APPLIST);
- NativeAbility::GetInstance().Back(TransitionType::TRANSITION_ZOOM);
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
return true;
}
return false;
if (keyID == static_cast<uint16_t>(ZliteKeyCode::ZLITE_KEY_POWER) && keyState == 1 && uapi_get_screen_state() == 0)
{
// NativeAbility::GetInstance().ChangeSlice(VIEW_APPLIST);
- NativeAbility::GetInstance().Back(TransitionType::TRANSITION_ZOOM);
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
}
return true;
}
HealthState highHealthState;
highHealthState.checkType = CHARGE;
HealthService::GetInstance()->SetHealthCurrent(highHealthState);
- NativeAbility::GetInstance().ChangeSlice(VIEW_CHECK_INVALID, TransitionType::TRANSITION_ZOOM);
+ NativeAbility::GetInstance().ChangeSlice(VIEW_CHECK_INVALID, TransitionType::TRANSITION_BACK_TO_HEXAGONS);
}
else
{
- NativeAbility::GetInstance().EnterSlice(VIEW_HEART_CHECK, TransitionType::TRANSITION_ZOOM);
+ NativeAbility::GetInstance().EnterSlice(VIEW_HEART_CHECK, TransitionType::TRANSITION_BACK_TO_HEXAGONS);
}
}
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "HeartPresenter::OnClick");
if (event.GetDragDirection() == DragEvent::DIRECTION_LEFT_TO_RIGHT &&
(event.GetDeltaX() > 20) && (event.GetDeltaX() > (2 * MATH_ABS(event.GetDeltaY()))))
{
- NativeAbility::GetInstance().Back();
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
}
if(event.GetDragDirection() == DragEvent::DIRECTION_TOP_TO_BOTTOM)
{
{
// 执行全部删除操作
model->ClearAllMessages();
- NativeAbility::GetInstance().Back();
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
return true;
}
// 如果是power键,且是亮屏状态,按键释放就返回上一级
if (keyID == static_cast<uint16_t>(ZliteKeyCode::ZLITE_KEY_POWER) && keyState == 1 && uapi_get_screen_state() == 0)
{
- NativeAbility::GetInstance().Back(TransitionType::TRANSITION_ZOOM);
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
}
return true;
}
if (keyID == static_cast<uint16_t>(ZliteKeyCode::ZLITE_KEY_POWER) && keyState == 1 && uapi_get_screen_state() == 0)
{
// NativeAbility::GetInstance().ChangeSlice(VIEW_APPLIST);
- NativeAbility::GetInstance().Back(TransitionType::TRANSITION_ZOOM);
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
}
return true;
}
else
{
//if(event.GetPreLastPoint().x-event.GetStartPoint().x>200)
- NativeAbility::GetInstance().Back();
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
//NativeAbility::GetInstance().EnterSlice(VIEW_APPLIST);
TelephonyInitInterface::X_DRAG_FLAG = false;
}
if (keyID == static_cast<uint16_t>(ZliteKeyCode::ZLITE_KEY_POWER) && keyState == 1 && uapi_get_screen_state() == 0)
{
- NativeAbility::GetInstance().Back();
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
}
return true;
}
UNUSED(view);
if (event.GetDragDirection() == DragEvent::DIRECTION_LEFT_TO_RIGHT && SleepControlPresenter::X_DRAG_FLAG)
{
- NativeAbility::GetInstance().Back();
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
}
return true;
}
// 如果是power键就返回上一级
if (keyID == static_cast<uint16_t>(ZliteKeyCode::ZLITE_KEY_POWER) && keyState == 1 && uapi_get_screen_state() == 0)
{
- NativeAbility::GetInstance().Back();
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
}
return true;
}
void SleepControlView::OnStart()
{
View<SleepControlPresenter>::OnStart();
- RootView::GetInstance()->Add(GetSleepControlPageView());
+ SetContainerView(new UIViewGroup());
+ if (GetContainer() == nullptr)
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "container_ new fail!!");
+ return;
+ }
+ container_->SetPosition(0, 0, Screen::GetInstance().GetWidth(), Screen::GetInstance().GetHeight());
+ container_->SetTouchable(true);
+ container_->SetDraggable(true);
+ container_->Add(GetSleepControlPageView());
+ // RootView::GetInstance()->Add(GetSleepControlPageView());
if (SleepSwipeViewList == nullptr)
{
void SleepControlView::OnStop()
{
View<SleepControlPresenter>::OnStop();
+ if(container_ != nullptr)
+ {
+ container_->RemoveAll();
+ delete container_;
+ container_ =nullptr;
+ }
RootView::GetInstance()->ClearOnKeyActListener();
RootView::GetInstance()->RemoveAll();
return;
\r
LabelSetup labelSetups[] = {\r
{153, STR_ABOUT_WATCH},\r
- {273, STR_SYSTEM_UPDATE},\r
+ // {273, STR_SYSTEM_UPDATE},\r
{393, STR_WATCH_QR_CODE},\r
{513, STR_SYSTEM_LANGUAGE},\r
{633, STR_RESTART},\r
.textId = STR_ABOUT_WATCH,\r
.lineBreakMode = UILabel::LINE_BREAK_OSCILLATION,\r
};\r
+ int pos_y = 153;\r
for (int i = 0; i < sizeof(labelSetups) / sizeof(labelSetups[0]); ++i)\r
{\r
\r
- labelConfig.top = labelSetups[i].y;\r
+ labelConfig.top = pos_y + 120*i;\r
labelConfig.textId = labelSetups[i].textId;\r
SystemViewLabel[i] = SystemViewLabelInit(labelConfig);\r
if (SystemViewLabel[i] == nullptr)\r
};\r
ButtonSetup buttonSetups[] = {\r
{120, ABOUT_THE_WATCH},\r
- {240, SYSTEM_UPGRADE},\r
+ // {240, SYSTEM_UPGRADE},\r
{360, WATCH_QR_CODE},\r
{480, SYSTEM_LANGUAGE},\r
{600, RESTART},\r
{840, FACTORY_RESET},\r
};\r
\r
+ int pos_y = 120;\r
for (int i = 0; i < sizeof(buttonSetups) / sizeof(buttonSetups[0]); ++i)\r
{\r
ButtonConfig buttonconfig = {\r
.x = 43,\r
- .y = buttonSetups[i].y,\r
+ // .y = buttonSetups[i].y,\r
+ .y = pos_y + 120*i,\r
.w = 380,\r
.h = 100,\r
.viewId = buttonSetups[i].viewId,\r
{\r
return;\r
}\r
- temp->SetPosition(43, 960, 380, 40);\r
+ temp->SetPosition(43, 840, 380, 40);\r
temp->SetVisible(false);\r
SystemScrollView[SYSTEMVIEW]->Add(temp);\r
}\r
// 退出拍照
if (request->msgId == TOPIC_EVENT_CANCEL_CMAERA)
{
- NativeAbility::GetInstance().Back();
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
cameraSend(3);
TakephotosModel::GetInstance()->SetPopStaust(PopupPhoto::CreamPopup);
}
(event.GetDeltaX() > 20) && (event.GetDeltaX() > (2 * MATH_ABS(event.GetDeltaY()))))
{
- NativeAbility::GetInstance().Back();
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
/*如果是拍照界面需要发送拍照结束的消息*/
if (TakephotosModel::GetInstance()->GetPopStaust() == PopupPhoto::TakePopup)
// 返回按键
if (strcmp(view.GetViewId(), BUTTONGO) == 0)
{
- NativeAbility::GetInstance().Back();
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
}
if (strcmp(view.GetViewId(), BUTTONTAKE) == 0)
{
// 如果是power键,且是亮屏状态,按键释放就返回上一级
if (keyID == static_cast<uint16_t>(ZliteKeyCode::ZLITE_KEY_POWER) && keyState == 1 && uapi_get_screen_state() == 0)
{
- NativeAbility::GetInstance().Back();
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
/*如果是拍照界面需要发送拍照结束的消息*/
if (TakephotosModel::GetInstance()->GetPopStaust() == PopupPhoto::TakePopup)
{
3.[更多]->[具体训练项]进入\r
4.[设置训练目标]进入 {不返回}\r
*/\r
- NativeAbility::GetInstance().Back(TransitionType::TRANSITION_ZOOM);\r
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);\r
}\r
bool TraingNomalPresenter::OnDrag(UIView &view, const DragEvent &event)\r
{\r
// 回退函数 [ Slice 的 traingview {右滑只能回到applist}]
void TraingPresenter::NavigateBack()
{
- NativeAbility::GetInstance().ChangeSlice(VIEW_APPLIST, TransitionType::TRANSITION_ZOOM);
+ NativeAbility::GetInstance().ChangeSlice(VIEW_APPLIST, TransitionType::TRANSITION_BACK_TO_HEXAGONS);
NativeAbility::GetInstance().ClearSliceIdStack(); // 清空所有SLiceId栈元素
}
bool TraingPresenter::OnDrag(UIView &view, const DragEvent &event)
// NativeAbility::GetInstance().ChangeSlice(VIEW_TRAINING_RECORD);\r
if (TraingModel::GetInstance()->GetEntryType() == APPLIST_ENTER)\r
NativeAbility::GetInstance().ChangeSlice(VIEW_TRAINING,\r
- TransitionType::TRANSITION_ZOOM);\r
+ TransitionType::TRANSITION_BACK_TO_HEXAGONS);\r
else {\r
NativeAbility::GetInstance().ChangeSlice(VIEW_MAIN,\r
- TransitionType::TRANSITION_ZOOM);\r
+ TransitionType::TRANSITION_BACK_TO_HEXAGONS);\r
NativeAbility::GetInstance().ClearSliceIdStack(); // 清空所有SLiceId栈元素\r
}\r
NativeAbility::GetInstance().ClearSliceIdStack(); // 清空所有SLiceId栈元素\r
if (preSlice == VIEW_TRAININGENDDATA)\r
{\r
if (TraingModel::GetInstance()->GetEntryType() == APPLIST_ENTER)\r
- NativeAbility::GetInstance().ChangeSlice(VIEW_TRAINING, TransitionType::TRANSITION_ZOOM);\r
+ NativeAbility::GetInstance().ChangeSlice(VIEW_TRAINING, TransitionType::TRANSITION_BACK_TO_HEXAGONS);\r
else\r
{\r
- NativeAbility::GetInstance().ChangeSlice(VIEW_MAIN, TransitionType::TRANSITION_ZOOM);\r
+ NativeAbility::GetInstance().ChangeSlice(VIEW_MAIN, TransitionType::TRANSITION_BACK_TO_HEXAGONS);\r
NativeAbility::GetInstance().ClearSliceIdStack(); // 清空所有SLiceId栈元素\r
}\r
}\r
else\r
{\r
- NativeAbility::GetInstance().Back(TransitionType::TRANSITION_ZOOM);\r
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);\r
}\r
}\r
bool TraingMorePresenter::OnDrag(UIView &view, const DragEvent &event)\r
if (preSlice == VIEW_TRAININGCRAD)
{
if (TraingModel::GetInstance()->GetEntryType() == APPLIST_ENTER)
- NativeAbility::GetInstance().ChangeSlice(VIEW_TRAINING, TransitionType::TRANSITION_ZOOM);
+ NativeAbility::GetInstance().ChangeSlice(VIEW_TRAINING, TransitionType::TRANSITION_BACK_TO_HEXAGONS);
else
{
- NativeAbility::GetInstance().ChangeSlice(VIEW_MAIN, TransitionType::TRANSITION_ZOOM);
+ NativeAbility::GetInstance().ChangeSlice(VIEW_MAIN, TransitionType::TRANSITION_BACK_TO_HEXAGONS);
NativeAbility::GetInstance().ClearSliceIdStack(); // 清空所有SLiceId栈元素
}
}
else
{
- NativeAbility::GetInstance().Back(TransitionType::TRANSITION_ZOOM);
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
}
}
bool TraingRecordPresenter::OnDrag(UIView &view, const DragEvent &event)
if ((event.GetDragDirection() == DragEvent::DIRECTION_LEFT_TO_RIGHT) &&
(event.GetDeltaX() > X_DRAG_OFFSET) && (event.GetDeltaX() > (DOUBLES * MATH_ABS(event.GetDeltaY())))) {
WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "Applist Ondrag!!");
- NativeAbility::GetInstance().ChangeSlice(VIEW_MAIN_SAMPLE, TransitionType::TRANSITION_ZOOM);
+ NativeAbility::GetInstance().ChangeSlice(VIEW_MAIN_SAMPLE, TransitionType::TRANSITION_BACK_TO_HEXAGONS);
}
return false;
CallVolumeDipSwitchControl(VOLUMEUP);
} else if (currentViewId != VIEW_MAIN_SAMPLE) { // 主表盘
PressAlarmNotify(); // 当前为闹钟通知页面时,先处理闹钟再切换页面
- NativeAbility::GetInstance().ChangeSlice(VIEW_MAIN_SAMPLE, TransitionType::TRANSITION_ZOOM);
+ NativeAbility::GetInstance().ChangeSlice(VIEW_MAIN_SAMPLE, TransitionType::TRANSITION_BACK_TO_HEXAGONS);
} else {
PressAlarmNotify(); // 当前为闹钟通知页面时,先处理闹钟再切换页面
if (!MainViewSample::GetInstance()->IsMainClockPage()) { // 当前页面为主表盘的其他页面时,切换回主表盘页面
MainViewSample::GetInstance()->SwitchToClockPage();
} else {
- NativeAbility::GetInstance().ChangeSlice(VIEW_APPLIST, TransitionType::TRANSITION_ZOOM);
+ NativeAbility::GetInstance().ChangeSlice(VIEW_APPLIST, TransitionType::TRANSITION_BACK_TO_HEXAGONS);
}
}
}