bool OnKeyAct(UIView &view, const KeyEvent &event) override; // 增加按键事件\r
bool OnClick(UIView &view, const ClickEvent &event) override;\r
bool OnDrag(UIView& view, const DragEvent& event) override;\r
+ bool OnDragEnd(UIView& view, const DragEvent& event) override;\r
void OnSwipe(UISwipeView &view) override;\r
bool ClickFuncId(const char *buttonName);\r
bool ClickFuncView(UIView &view);\r
uint16_t clockQty{0};\r
int16_t interListener;\r
bool buttonStratus = true;\r
+ bool X_DRAG_FLAG{false};\r
};\r
}\r
#endif
\ No newline at end of file
deltaX = event.GetDeltaX();\r
deltaY = event.GetDeltaY();\r
if (MATH_ABS(deltaX) >= MATH_ABS(deltaY) && MATH_ABS(deltaX) > SLIDING_LENGTH) {\r
- MainAlarmView::GetInstance()->DropView(view);\r
+ // MainAlarmView::GetInstance()->DropView(view);\r
+ X_DRAG_FLAG = true;\r
}\r
}\r
return true;\r
}\r
\r
+bool AlarmPresenter::OnDragEnd(UIView& view, const DragEvent& event)\r
+{\r
+ if (event.GetDragDirection() == DragEvent::DIRECTION_LEFT_TO_RIGHT && X_DRAG_FLAG) \r
+ {\r
+ MainAlarmView::GetInstance()->DropView(view);\r
+ X_DRAG_FLAG = false;\r
+ }\r
+ return true;\r
+}\r
+\r
struct AlarmPresentMapper1 {\r
const char *viewId;\r
void (AlarmPresenter::*func)(uint16_t);\r
}
// SwipeView_[alarmNum]->SetViewId(ITEM_SWIPE[alarmNum]);
SwipeView_[alarmNum]->SetTouchable(true);
- SwipeView_[alarmNum]->SetThrowDrag(true);
+ // SwipeView_[alarmNum]->SetThrowDrag(true);
SwipeView_[alarmNum]->SetOnSwipeListener(presenter_);
+ SwipeView_[alarmNum]->SetAnimatorTime(50); // 200:animator drag time(ms)
+ // SwipeView_[alarmNum]->SetOnDragListener(presenter_);
SwipeView_[alarmNum]->SetStyle(STYLE_BACKGROUND_COLOR, 0xff191919);
SwipeView_[alarmNum]->SetStyle(STYLE_BACKGROUND_OPA, OPA_OPAQUE);
SwipeView_[alarmNum]->SetStyle(STYLE_BORDER_RADIUS, 100);
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
char *PickerData = (char *)malloc(128);\r
if (lastRecordTime == 0) // 如果是第一次标记\r
{\r
- sprintf(PickerData, "0%d %s +%s", RecordCycleNumber, formattedTime, formattedTime);\r
+ sprintf(PickerData, "%02d %s +%s", RecordCycleNumber, formattedTime, formattedTime);\r
}\r
else\r
{\r
- sprintf(PickerData, "0%d %s +%s", RecordCycleNumber, formattedTime, formattedDiff);\r
+ sprintf(PickerData, "%02d %s +%s", RecordCycleNumber, formattedTime, formattedDiff);\r
}\r
m_listdata->PushFront(const_cast<const char *>(PickerData));\r
m_listadapter->SetData(m_listdata);\r