void SetEndView();\r
void SetImageAndLabel(bool state);\r
void ShowEndView(bool state);\r
+ void UpdateimageAndLabelPosition(void);\r
private:\r
UIScrollView *scrollView = nullptr;\r
UILabelExt *Title = nullptr;\r
* @Author: luozheng 1732036298@qq.com\r
* @Date: 2024-04-07 18:15:53\r
* @LastEditors: luozheng 1732036298@qq.com\r
- * @LastEditTime: 2024-08-20 15:16:40\r
+ * @LastEditTime: 2024-08-30 10:24:52\r
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/countdown/src/CountDownModel.cpp\r
*/\r
#include "countdown/include/CountDownModel.h"\r
#include "ConfigModel.h"\r
#include "ui_resource_string.h"\r
#include "custom_runtime.h"\r
+#include "uiservice/include/ui_service.h"\r
namespace OHOS\r
{\r
/* -------------------------------------------------------------------------- */\r
// 检查倒计时是否结束\r
if (CountDownModel::g_CountDownTimes <= 0)\r
{\r
+ ScreenTurnOn(5*1000);//亮屏5s\r
+\r
MainCountDownView::GetInstance()->GetStartCountDownView()->GetPlayOrPauseToggleButton()->SetVisible(false);\r
MainCountDownView::GetInstance()->GetStartCountDownView()->GetRepeatButton()->SetVisible(true);\r
CountDownModel::GetInstance()->CountDown_StopTimer(); // 停止定时器\r
void MainCountDownPresenter::OnStart()\r
{\r
Presenter<MainCountDownView>::OnStart();\r
- ScreenAlwaysOnCtr(OPEN_SCREEN_ALWAYS_ON); // 长亮屏\r
+ // ScreenAlwaysOnCtr(OPEN_SCREEN_ALWAYS_ON); // 长亮屏\r
}\r
\r
void MainCountDownPresenter::OnPause(void)\r
void MainCountDownPresenter::OnStop(void)\r
{\r
Presenter<MainCountDownView>::OnStop();\r
- ScreenAlwaysOnCtr(CANCEL_SCREEN_ALWAYS_ON); // 取消长亮屏\r
+ // ScreenAlwaysOnCtr(CANCEL_SCREEN_ALWAYS_ON); // 取消长亮屏\r
}\r
\r
bool MainCountDownPresenter::OnDrag(UIView &view, const DragEvent &event)\r
scrollView[MAIN_COUNTDOWN]->SetOnDragListener(draglistener);\r
scrollView[MAIN_COUNTDOWN]->SetReboundSize(50); // 设置回弹大小\r
scrollView[MAIN_COUNTDOWN]->SetHorizontalScrollState(false); // 设置横向不可以滚动\r
- scrollView[MAIN_COUNTDOWN]->SetScrollBlankSize(50); // 设置高位50可滑动空白区域\r
+ scrollView[MAIN_COUNTDOWN]->SetScrollBlankSize(75);\r
+ scrollView[MAIN_COUNTDOWN]->SetThrowDrag(true);\r
+ scrollView[MAIN_COUNTDOWN]->SetMaxScrollDistance(1000);\r
+ scrollView[MAIN_COUNTDOWN]->SetSwipeACCLevel(800); // 800: compensation distance\r
+ scrollView[MAIN_COUNTDOWN]->SetDragACCLevel(5); // 5: drag acceleration\r
+ scrollView[MAIN_COUNTDOWN]->SetRotateFactor(2);\r
+ scrollView[MAIN_COUNTDOWN]->RequestFocus();\r
/* ---------------------------------- Title --------------------------------- */\r
Title = new UILabelExt();\r
if (Title == nullptr)\r
button->SetImageSrc(img, img);\r
// button->SetText(text);\r
button->SetTextId(textId);\r
- button->SetAlign(TEXT_ALIGNMENT_LEFT);\r
- button->SetLabelPosition(51, 61);\r
+ button->SetAlign(TEXT_ALIGNMENT_CENTER);\r
+ button->SetLabelPosition(0, 61);\r
button->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 30);\r
button->SetStyle(STYLE_LINE_HEIGHT, 35);\r
button->SetStyleForState(STYLE_BACKGROUND_COLOR, 0xffffa800, UIButton::PRESSED);\r
scrollView[thisView] = p_StartCountDownView->StartCountDownViewInit();\r
group->Add(scrollView[thisView]);\r
}\r
+ if (p_StartCountDownView)\r
+ {\r
+ p_StartCountDownView->UpdateimageAndLabelPosition();\r
+ }\r
return true;\r
}\r
\r
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "showTheRingTime is new fail!!");\r
return nullptr;\r
}\r
- showTheRingTime->SetPosition(209, 241, 84, 41);\r
+ showTheRingTime->SetPosition(209, 241, 81, 41);\r
showTheRingTime->SetStyle(STYLE_TEXT_FONT, 35);\r
showTheRingTime->SetStyle(STYLE_LINE_HEIGHT, 41);\r
showTheRingTime->SetText(CountDownModel::GetInstance()->GetRingTime().c_str());\r
vectorbigImage->SetVisible(state);\r
showTheEndRingTime->SetVisible(state);\r
}\r
+ void StartCountDownView::UpdateimageAndLabelPosition(void)\r
+ {\r
+ if (vectorImage == nullptr || showTheRingTime == nullptr)\r
+ return;\r
+ int w = vectorImage->GetWidth() + showTheRingTime->GetTextWidth() + 7;\r
+ vectorImage->SetX((Screen::GetInstance().GetWidth() - w) / 2);\r
+ showTheRingTime->SetX(vectorImage->GetX() + vectorImage->GetWidth() + 7);\r
+ vectorImage->Invalidate();\r
+ showTheRingTime->Invalidate();\r
+ }\r
}
\ No newline at end of file