* @Author: luozheng 1732036298@qq.com
* @Date: 2024-06-26 18:14:24
* @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-08-03 17:11:11
+ * @LastEditTime: 2024-08-22 16:35:46
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/main/src/PullUpDownView.cpp
*/
-#if 1
#include "PullUpDownView.h"
#include "wearable_log.h"
#include "UiConfig.h"
{
/* ---------------------------------- 坐标位置 ---------------------------------- */
- // 设置
- static constexpr uint16_t SETTING_IMG_X = 30;
- static constexpr uint16_t SETTING_IMG_Y = 186;
- static constexpr const char *DROPDOWN_SETTING_IMAGE = "/user/res/dropdown/DROPDOWN_SETTING.bin";
-
- // 蓝牙
- static constexpr uint16_t BLUETOOTH_IMG_X = 76;
- static constexpr uint16_t BLUETOOTH_IMG_Y = 76;
- static constexpr const char *DROPDOWN_BLUETOOTH_IMAGE = "/user/res/dropdown/DROPDOWN_BLUETOOTH.bin";
-
- // 勿扰
- static constexpr uint16_t DNOTDISTURB_IMG_X = 186;
- static constexpr uint16_t DNOTDISTURB_IMG_Y = 30;
- static constexpr const char *DROPDOWN_DNOTDISTURB_IMAGE = "/user/res/dropdown/DROPDOWN_DNOTDISTURB.bin";
-
- // 省电
- static constexpr uint16_t SAVEPOWER_IMG_X = 296;
- static constexpr uint16_t SAVEPOWER_IMG_Y = 76;
- // static constexpr const char *DROPDOWN_SAVEPOWER_IMAGE = "/user/res/dropdown/DROPDOWN_SAVEPOWER.bin";
- static constexpr const char *DROPDOWN_SAVEPOWER_IMAGE = "/user/res/dropdown/DROPDOWN_ALIPAY.bin";/*支付宝*/
-
- // 找手机
- static constexpr uint16_t FINDPHONE_IMG_X = 342;
- static constexpr uint16_t FINDPHONE_IMG_Y = 186;
- // static constexpr const char *DROPDOWN_FINDPHONE_IMAGE = "/user/res/dropdown/DROPDOWN_FINDPHONE.bin";
- static constexpr const char *DROPDOWN_FINDPHONE_IMAGE = "/user/res/dropdown/DROPDOWN_4G.bin";/*4G*/
-
- // line
- static constexpr uint16_t LINE_IMG_X = 193;
- static constexpr uint16_t LINE_IMG_Y = 430;
- static constexpr const char *DROPDOWN_LINE_IMAGE = "/user/res/dropdown/DROPDOWN_LINE.bin";
-
- // icon图片大小
- static constexpr uint16_t ICON_IMG_SIZE_W = 94;
- static constexpr uint16_t ICON_IMG_SIZE_H = 94;
-
- // 电池
- static constexpr uint16_t BATTERY_X = 209;
- static constexpr uint16_t BATTERY_Y = 180;
-
- // 时间
- static constexpr uint16_t TIME_LABEL_X = 172;
- static constexpr uint16_t TIME_LABEL_Y = 230;
-
- // 日期
- static constexpr uint16_t DATE_LABEL_X = 110;
- static constexpr uint16_t DATE_LABEL_Y = 300;
-
- // 星期
- static constexpr uint16_t WEEK_LABEL_X = 295;
- static constexpr uint16_t WEEK_LABEL_Y = 300;
-
// 手机连接状态
- static constexpr uint16_t PHONECONNECTSTATUS_IMG_X = 123;
- static constexpr uint16_t PHONECONNECTSTATUS_IMG_Y = 350;
- static constexpr const char *DROPDOWN_PHONECONNECTED_IMAGE = "/user/res/dropdown/DROPDOWN_PHONECONNECTED.bin";
- static constexpr const char *DROPDOWN_PHONEDISCONNECTED_IMAGE = "/user/res/dropdown/DROPDOWN_PHONEDISCONNECTED.bin";
-
+ static constexpr const char *DROPDOWN_PHONECONNECTED_IMAGE = "/user/res/dropdown/phone_connect.bin";
+ static constexpr const char *DROPDOWN_PHONEDISCONNECTED_IMAGE = "/user/res/dropdown/phone_disconnect.bin";
// 耳机连接状态
- static constexpr uint16_t EARPHONESCONNECTSTATUS_IMG_X = 203;
- static constexpr uint16_t EARPHONESCONNECTSTATUS_IMG_Y = 350;
- static constexpr const char *DROPDOWN_EARPHONESCONNECTED_IMAGE = "/user/res/dropdown/DROPDOWN_EARPHONESCONNECTED.bin";
- static constexpr const char *DROPDOWN_EARPHONESDISCONNECTED_IMAGE = "/user/res/dropdown/DROPDOWN_EARPHONESDISCONNECTED.bin";
-
+ static constexpr const char *DROPDOWN_EARPHONESCONNECTED_IMAGE = "/user/res/dropdown/earphones_connect.bin";
+ static constexpr const char *DROPDOWN_EARPHONESDISCONNECTED_IMAGE = "/user/res/dropdown/earphones_disconnect.bin";
// 蓝牙连接状态
- static constexpr uint16_t BLUETOOTHCONNECTSTATUS_IMG_X = 283;
- static constexpr uint16_t BLUETOOTHCONNECTSTATUS_IMG_Y = 350;
- static constexpr const char *DROPDOWN_BLUETOOTHCONNECTED_IMAGE = "/user/res/dropdown/DROPDOWN_BLUETOOTHCONNECTED.bin";
- static constexpr const char *DROPDOWN_BLUETOOTHDISCONNECTED_IMAGE = "/user/res/dropdown/DROPDOWN_BLUETOOTHDISCONNECTED.bin";
-
- static constexpr uint16_t CONNECTSTATUS_IMG_W = 60;
- static constexpr uint16_t CONNECTSTATUS_IMG_H = 60;
+ static constexpr const char *DROPDOWN_BLUETOOTHCONNECTED_IMAGE = "/user/res/dropdown/bluetooth_connect.bin";
+ static constexpr const char *DROPDOWN_BLUETOOTHDISCONNECTED_IMAGE = "/user/res/dropdown/bluetooth_disconnect.bin";
static constexpr const char *DROPDOWN_NOSIGNAL_IMAGE = "/user/res/dropdown/DROPDOWN_NOSIGNAL.bin";
static constexpr const char *DROPDOWN_MOBILE_DATA_IMAGE = "/user/res/dropdown/DROPDOWN_MOBILE_DATA.bin";
+ static constexpr const char *DROPDOWN_HD_IMAGE = "/user/res/dropdown/DROPDOWN_HD.bin";
+ static constexpr const char *DROPDOWN_SELECT_1_IMAGE = "/user/res/dropdown/DROPDOWN_SELECT_1.bin";
+ static constexpr const char *DROPDOWN_SELECT_2_IMAGE = "/user/res/dropdown/DROPDOWN_SELECT_2.bin";
+ static constexpr const char *DROPDOWN_LINE_IMAGE = "/user/res/dropdown/DROPDOWN_LINE.bin";
static const int64_t COLOR_SIGNAL_ON = 0xffffffff;
static const int64_t COLOR_SIGNAL_OFF = 0xff383838;
- static const int BATTERY_IMAGE_WIDTH = 48;
- static const int BATTERY_IMAGE_HEIGHT = 30;
- static const int PROGRESS_WIDTH = 30;
- static const int PROGRESS_HEIGHT = 18;
- /* -------------------------------------------------------------------------- */
- std::string getWeekString(int wday)
- {
- std::string weekDays[] = {"星期天", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};
- return weekDays[wday];
- }
/* -------------------------------------------------------------------------- */
static PullUpDownView *g_pPullUpDownView = nullptr;
PullUpDownView::PullUpDownView()
return g_pPullUpDownView;
}
- // 清除信号强度相关组件
- void PullUpDownView::ClearAllSingalComponentsView()
- {
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::ClearAllSingalComponentsView");
- if (NoSignal != nullptr)
- {
- delete NoSignal;
- NoSignal = nullptr;
- }
-
- for (int i = 0; i < 4; i++)
- {
- if (showSignalStrength[i] != nullptr)
- {
- delete showSignalStrength[i];
- showSignalStrength[i] = nullptr;
- }
- }
-
- if (Singal_4 != nullptr)
- {
- delete Singal_4;
- Singal_4 = nullptr;
- }
-
- if (MobileData != nullptr)
- {
- delete MobileData;
- MobileData = nullptr;
- }
- }
-
- // 清除所有与连接状态相关的视图组件
- void PullUpDownView::ClearAllConnectedStatusComponentsView()
+ void PullUpDownView::OnSwipe(UISwipeView &view)
{
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::ClearAllConnectedStatusComponentsView");
- if (connectedStatusBackgroundButton != nullptr)
- {
- delete connectedStatusBackgroundButton;
- connectedStatusBackgroundButton = nullptr;
- }
-
- if (showPhoneConnectedStatus != nullptr)
- {
- delete showPhoneConnectedStatus;
- showPhoneConnectedStatus = nullptr;
- }
-
- if (showEarPhoneConnectedStatus != nullptr)
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "PullUpDownView::OnSwipe,current tab index = %d", view.GetCurrentPage());
+ if (view.GetCurrentPage() == 0)
{
- delete showEarPhoneConnectedStatus;
- showEarPhoneConnectedStatus = nullptr;
+ UpdateSwipviewSelect(true);
}
-
- if (showBluetoothConnectedStatus != nullptr)
+ else
{
- delete showBluetoothConnectedStatus;
- showBluetoothConnectedStatus = nullptr;
+ UpdateSwipviewSelect(false);
}
+ return;
}
void PullUpDownView::ClearAll()
if (group[DROPDOWNVIEW] != nullptr)
{
group[DROPDOWNVIEW]->RemoveAll();
- group[DROPDOWNVIEW]->ClearBackgroundBlur();
+ /* -------------------------------------------------------------------------- */
+ ClearAll_1();
+ ClearAll_2();
+ ClearAll_3();
+ ClearAll_4();
+ /* -------------------------------------------------------------------------- */
delete group[DROPDOWNVIEW];
group[DROPDOWNVIEW] = nullptr;
}
-
- if (dropSetting != nullptr)
- {
- delete dropSetting;
- dropSetting = nullptr;
- }
-
- if (dropBluetooth != nullptr)
- {
- delete dropBluetooth;
- dropBluetooth = nullptr;
- }
-
- if (dropDnotDisturb != nullptr)
- {
- delete dropDnotDisturb;
- dropDnotDisturb = nullptr;
- }
-
- if (dropSavePower != nullptr)
- {
- delete dropSavePower;
- dropSavePower = nullptr;
- }
-
- if (drofindPhone != nullptr)
- {
- delete drofindPhone;
- drofindPhone = nullptr;
- }
-
- if (dropLine != nullptr)
- {
- delete dropLine;
- dropLine = nullptr;
- }
-
- if (showTimeLabel != nullptr)
- {
- delete showTimeLabel;
- showTimeLabel = nullptr;
- }
-
- if (showDateLabel != nullptr)
- {
- delete showDateLabel;
- showDateLabel = nullptr;
- }
-
- if (showWeekLabel != nullptr)
- {
- delete showWeekLabel;
- showWeekLabel = nullptr;
- }
- /* -------------------------------------------------------------------------- */
- ClearAllSingalComponentsView();
- ClearAllConnectedStatusComponentsView();
- /* -------------------------------------------------------------------------- */
- if (batteryimage != nullptr)
- {
- delete batteryimage;
- batteryimage = nullptr;
- }
-
- if (progress != nullptr)
- {
- delete progress;
- progress = nullptr;
- }
-
if (connectedStatusView != nullptr)
{
delete connectedStatusView;
connectedStatusView = nullptr;
- group[CONNECTEDSTATUSVIEW] = nullptr;
- }
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::ClearAll end!!");
- }
-
- UIImageView *PullUpDownView::dropDownIconImageViweInit(ImageConfig &imageconfig)
- {
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::dropDownIconImageViweInit");
- UIImageView *Image = new UIImageView();
- if (Image == nullptr)
- {
- return nullptr;
- }
- Image->SetPosition(imageconfig.x, imageconfig.y, imageconfig.w, imageconfig.h);
- Image->SetViewId(imageconfig.viewid);
- Image->SetStyle(STYLE_BACKGROUND_COLOR, 0xff191919);
- Image->SetStyle(STYLE_BACKGROUND_OPA, 0xff);
- Image->SetStyle(STYLE_BORDER_RADIUS, 100);
- Image->SetAutoEnable(false);
- Image->SetResizeMode(UIImageView::CENTER);
- Image->SetSrc(imageconfig.src);
- Image->SetTouchable(true);
- Image->SetOnClickListener(imageconfig.clicklistener);
-
- return Image;
- }
-
- /// @brief 创建icon图标
- void PullUpDownView::createDropDownIconImageViwe(void)
- {
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::InitViewImg");
- UIView::OnClickListener *clickListener = (UIView::OnClickListener *)OHOS::MainPresenterSample::GetInstance();
- if (clickListener == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "MainPresenterSample::GetInstance fail!!");
- return;
- }
- /* ---------------------------------- 下拉设置图片 ---------------------------------- */
- ImageConfig imageconfig = {
- .x = SETTING_IMG_X,
- .y = SETTING_IMG_Y,
- .w = ICON_IMG_SIZE_W,
- .h = ICON_IMG_SIZE_H,
- .viewid = DROPDOWN_CLICK_SETTING,
- .src = DROPDOWN_SETTING_IMAGE,
- .clicklistener = clickListener,
- };
- dropSetting = dropDownIconImageViweInit(imageconfig);
- if (dropSetting == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "PullUpDownView::dropSetting new fail");
- return;
- }
- /* ----------------------------------- 蓝牙 ----------------------------------- */
- imageconfig = {
- .x = BLUETOOTH_IMG_X,
- .y = BLUETOOTH_IMG_Y,
- .w = ICON_IMG_SIZE_W,
- .h = ICON_IMG_SIZE_H,
- .viewid = DROPDOWN_CLICK_BLUETOOTH,
- .src = DROPDOWN_BLUETOOTH_IMAGE,
- .clicklistener = clickListener,
- };
- dropBluetooth = dropDownIconImageViweInit(imageconfig);
- if (dropBluetooth == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "PullUpDownView::dropBluetooth new fail");
- return;
- }
- /* ----------------------------------- 勿扰模式 ----------------------------------- */
- imageconfig = {
- .x = DNOTDISTURB_IMG_X,
- .y = DNOTDISTURB_IMG_Y,
- .w = ICON_IMG_SIZE_W,
- .h = ICON_IMG_SIZE_H,
- .viewid = DROPDOWN_CLICK_DNOTDISTURB,
- .src = DROPDOWN_DNOTDISTURB_IMAGE,
- .clicklistener = clickListener,
- };
- dropDnotDisturb = dropDownIconImageViweInit(imageconfig);
- if (dropDnotDisturb == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "PullUpDownView::dropDnotDisturb new fail");
- return;
- }
- UpdateDnotDisturbStatus(DnotDisturbModel::GetInstance().GetDoNotDisturbModeEnabled());
- /* ----------------------------------- 省电 ----------------------------------- */
- imageconfig = {
- .x = SAVEPOWER_IMG_X,
- .y = SAVEPOWER_IMG_Y,
- .w = ICON_IMG_SIZE_W,
- .h = ICON_IMG_SIZE_H,
- .viewid = DROPDOWN_CLICK_SAVEELE,
- .src = DROPDOWN_SAVEPOWER_IMAGE,
- .clicklistener = clickListener,
- };
- dropSavePower = dropDownIconImageViweInit(imageconfig);
- if (dropSavePower == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "PullUpDownView::dropSavePower new fail");
- return;
- }
- /* ----------------------------------- 找手机 ---------------------------------- */
- imageconfig = {
- .x = FINDPHONE_IMG_X,
- .y = FINDPHONE_IMG_Y,
- .w = ICON_IMG_SIZE_W,
- .h = ICON_IMG_SIZE_H,
- .viewid = DROPDOWN_CLICK_FINDMYPHONE,
- .src = DROPDOWN_FINDPHONE_IMAGE,
- .clicklistener = clickListener,
- };
- drofindPhone = dropDownIconImageViweInit(imageconfig);
- if (drofindPhone == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "PullUpDownView::drofindPhone new fail");
- return;
}
- /* -------------------------------- dropLine -------------------------------- */
- dropLine = new UIImageView();
- if (dropLine == nullptr)
+ for (int i = DROPDOWNVIEW; i < MAX_DROPDOWNVIEWID; i++)
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "dropLine new fail");
- return;
+ group[i] = nullptr;
}
- dropLine->SetPosition(LINE_IMG_X, LINE_IMG_Y, ICON_IMG_SIZE_W, ICON_IMG_SIZE_H);
- dropLine->SetSrc(DROPDOWN_LINE_IMAGE);
- /* -------------------------------- 添加组件到视图上 -------------------------------- */
- group[DROPDOWNVIEW]->Add(dropSetting);
- group[DROPDOWNVIEW]->Add(dropBluetooth);
- group[DROPDOWNVIEW]->Add(dropDnotDisturb);
- group[DROPDOWNVIEW]->Add(dropSavePower);
- group[DROPDOWNVIEW]->Add(drofindPhone);
- group[DROPDOWNVIEW]->Add(dropLine);
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::ClearAll end!!");
}
-
+ /* --------------------------------- 1.连接状态相关 --------------------------------- */
// 获取手机连接状态
bool PullUpDownView::GetPhoneConnectedStatus(void)
{
return SettingModel::GetInstance().GetPhoneConnectStatus();
}
-
// 获取蓝牙耳机连接状态
bool PullUpDownView::GetEarPhoneConnectedStatus(void)
{
return SettingModel::GetInstance().GetEarPhoneConnectStatus();
}
-
// 获取蓝牙连接状态
bool PullUpDownView::GetBlueToothConnectedStatus(void)
{
return SettingModel::GetInstance().GetBlueToothConnectStatus();
}
- UIImageView *PullUpDownView::dropDownConnectedStatusImageViweInit(int16_t x, int16_t y, int16_t w, int16_t h)
+ // 更新手机连接状态
+ void PullUpDownView::UpdatePhoneStatus(int status)
+ {
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::UpdatePhoneStatus");
+ if (showPhoneConnectedStatus == nullptr)
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "showPhoneConnectedStatus nullptr");
+ return;
+ }
+ showPhoneConnectedStatus->SetSrc(status ? DROPDOWN_PHONECONNECTED_IMAGE : DROPDOWN_PHONEDISCONNECTED_IMAGE);
+ showPhoneConnectedStatus->Invalidate();
+
+ if (GetConnectedStatusView() != nullptr)
+ GetConnectedStatusView()->UpdatePhoneConnectedStatus(status);
+
+ return;
+ }
+ // 更新蓝牙耳机连接状态
+ void PullUpDownView::UpdateEarPhoneStatus(int status)
+ {
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::UpdateEarPhoneStatus");
+ if (showEarPhoneConnectedStatus == nullptr)
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "showEarPhoneConnectedStatus nullptr");
+ return;
+ }
+ showEarPhoneConnectedStatus->SetSrc(status ? DROPDOWN_EARPHONESCONNECTED_IMAGE : DROPDOWN_EARPHONESDISCONNECTED_IMAGE);
+ showEarPhoneConnectedStatus->Invalidate();
+
+ if (GetConnectedStatusView() != nullptr)
+ GetConnectedStatusView()->UpdateEarPhoneConnectedStatus(status);
+
+ return;
+ }
+ // 更新蓝牙连接状态
+ void PullUpDownView::UpdateBlueToothStatus(int status)
+ {
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::UpdateBlueToothStatus");
+ if (showBluetoothConnectedStatus == nullptr)
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "showBluetoothConnectedStatus nullptr");
+ return;
+ }
+ showBluetoothConnectedStatus->SetSrc(status ? DROPDOWN_BLUETOOTHCONNECTED_IMAGE : DROPDOWN_BLUETOOTHDISCONNECTED_IMAGE);
+ showBluetoothConnectedStatus->Invalidate();
+
+ if (GetConnectedStatusView() != nullptr)
+ GetConnectedStatusView()->UpdateBlueToothConnectedStatus(status);
+
+ return;
+ }
+ UIImageView *PullUpDownView::DropDownConnectedStatusImageViweInit(int16_t x, int16_t y, int16_t w, int16_t h)
{
UIImageView *img = new UIImageView();
if (img == nullptr)
return img;
}
-
/// @brief 创建与连接状态相关组件
- void PullUpDownView::createDropDownConnectedStatusImageViwe(void)
+ void PullUpDownView::CreateDropDownConnectionStatusImageViwe(void)
{
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::InitConnectedStatusImage");
- connectedStatusBackgroundButton = new UIButton();
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::CreateDropDownConnectionStatusImageViwe");
if (connectedStatusBackgroundButton == nullptr)
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "connectedStatusBackgroundButton new fail");
- return;
+ connectedStatusBackgroundButton = new UIButton();
+ if (connectedStatusBackgroundButton == nullptr)
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "connectedStatusBackgroundButton new fail");
+ return;
+ }
}
- connectedStatusBackgroundButton->SetPosition(113, 348, 240, 64);
+ connectedStatusBackgroundButton->SetPosition(153, 10, 160, 50);
connectedStatusBackgroundButton->SetViewId(CONNECTEDSTATUSBACKGROUNDBUTTON);
- connectedStatusBackgroundButton->SetStyle(STYLE_BACKGROUND_COLOR, 0xffffffff);
- connectedStatusBackgroundButton->SetStyle(STYLE_BACKGROUND_OPA, 0x00);
- connectedStatusBackgroundButton->SetStyleForState(STYLE_BACKGROUND_COLOR, 0xffffffff, UIButton::PRESSED);
- connectedStatusBackgroundButton->SetStyleForState(STYLE_BACKGROUND_OPA, 0x00, UIButton::PRESSED);
- connectedStatusBackgroundButton->SetStyleForState(STYLE_BORDER_COLOR, 0xffffffff, UIButton::PRESSED);
- connectedStatusBackgroundButton->SetStyleForState(STYLE_BORDER_OPA, 0x00, UIButton::PRESSED);
+ connectedStatusBackgroundButton->SetStyle(STYLE_BACKGROUND_COLOR, 0xff191919);
+ connectedStatusBackgroundButton->SetStyle(STYLE_BACKGROUND_OPA, 0xff);
+ connectedStatusBackgroundButton->SetStyleForState(STYLE_BACKGROUND_COLOR, 0xff383838, UIButton::PRESSED);
UIView::OnClickListener *clickListener = (UIView::OnClickListener *)OHOS::MainPresenterSample::GetInstance();
if (clickListener == nullptr)
{
return;
}
connectedStatusBackgroundButton->SetOnClickListener(clickListener);
+ int x = connectedStatusBackgroundButton->GetX();
+ int y = connectedStatusBackgroundButton->GetY();
/* -------------------------------- 显示手机连接状态 -------------------------------- */
-
- showPhoneConnectedStatus = dropDownConnectedStatusImageViweInit(PHONECONNECTSTATUS_IMG_X, PHONECONNECTSTATUS_IMG_Y, CONNECTSTATUS_IMG_W, CONNECTSTATUS_IMG_H);
if (showPhoneConnectedStatus == nullptr)
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "showPhoneConnectedStatus new fail");
- return;
+ showPhoneConnectedStatus = DropDownConnectedStatusImageViweInit(x + 26, y + 13, 24, 24);
+ if (showPhoneConnectedStatus == nullptr)
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "showPhoneConnectedStatus new fail");
+ return;
+ }
}
/* -------------------------------- 显示耳机连接状态 -------------------------------- */
- showEarPhoneConnectedStatus = dropDownConnectedStatusImageViweInit(EARPHONESCONNECTSTATUS_IMG_X, EARPHONESCONNECTSTATUS_IMG_Y, CONNECTSTATUS_IMG_W, CONNECTSTATUS_IMG_H);
if (showEarPhoneConnectedStatus == nullptr)
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "showEarPhoneConnectedStatus new fail");
- return;
+ showEarPhoneConnectedStatus = DropDownConnectedStatusImageViweInit(x + 68, y + 13, 24, 24);
+ if (showEarPhoneConnectedStatus == nullptr)
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "showEarPhoneConnectedStatus new fail");
+ return;
+ }
}
/* -------------------------------- 显示蓝牙连接状态 -------------------------------- */
- showBluetoothConnectedStatus = dropDownConnectedStatusImageViweInit(BLUETOOTHCONNECTSTATUS_IMG_X, BLUETOOTHCONNECTSTATUS_IMG_Y, CONNECTSTATUS_IMG_W, CONNECTSTATUS_IMG_H);
if (showBluetoothConnectedStatus == nullptr)
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "showBluetoothConnectedStatus new fail");
- return;
+ showBluetoothConnectedStatus = DropDownConnectedStatusImageViweInit(x + 110, y + 13, 24, 24);
+ if (showBluetoothConnectedStatus == nullptr)
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "showBluetoothConnectedStatus new fail");
+ return;
+ }
}
/* -------------------------------------------------------------------------- */
UpdatePhoneStatus(GetPhoneConnectedStatus());
group[DROPDOWNVIEW]->Add(showBluetoothConnectedStatus);
}
- /***
- * @brief 初始化时间,日期,星期,电池,信号强度
- */
- bool PullUpDownView::InitBaseData()
+ void PullUpDownView::ClearAll_1(void)
{
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::InitBaseData");
- if (!InitSingalComponentsView())
+ if (connectedStatusBackgroundButton != nullptr)
{
- return false;
+ delete connectedStatusBackgroundButton;
+ connectedStatusBackgroundButton = nullptr;
}
-
- /* ---------------------------------- 时间显示 ---------------------------------- */
- showTimeLabel = new UILabel();
- if (showTimeLabel == nullptr)
+ if (showPhoneConnectedStatus != nullptr)
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "showTimeLabel new fail");
- return false;
+ delete showPhoneConnectedStatus;
+ showPhoneConnectedStatus = nullptr;
}
- showTimeLabel->SetPosition(TIME_LABEL_X, TIME_LABEL_Y);
- showTimeLabel->SetStyle(STYLE_TEXT_FONT, 50);
- showTimeLabel->SetStyle(STYLE_LINE_HEIGHT, 59);
- showTimeLabel->SetLineBreakMode(UILabel::LINE_BREAK_ADAPT);
- showTimeLabel->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER);
- showTimeLabel->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 50);
- /* ---------------------------------- 日期显示 ---------------------------------- */
- showDateLabel = new UILabel();
- if (showDateLabel == nullptr)
+ if (showEarPhoneConnectedStatus != nullptr)
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "showDateLabel new fail");
- return false;
+ delete showEarPhoneConnectedStatus;
+ showEarPhoneConnectedStatus = nullptr;
}
- showDateLabel->SetPosition(DATE_LABEL_X, DATE_LABEL_Y);
- showDateLabel->SetStyle(STYLE_TEXT_FONT, 30);
- showDateLabel->SetStyle(STYLE_LINE_HEIGHT, 35);
- showDateLabel->SetLineBreakMode(UILabel::LINE_BREAK_ADAPT);
- showDateLabel->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER);
- showDateLabel->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 30);
- /* ---------------------------------- 星期显示 ---------------------------------- */
- showWeekLabel = new UILabel();
- if (showWeekLabel == nullptr)
+ if (showBluetoothConnectedStatus != nullptr)
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "showWeekLabel new fail");
- return false;
+ delete showBluetoothConnectedStatus;
+ showBluetoothConnectedStatus = nullptr;
}
- showWeekLabel->SetPosition(WEEK_LABEL_X, WEEK_LABEL_Y);
- showWeekLabel->SetStyle(STYLE_TEXT_FONT, 30);
- showWeekLabel->SetStyle(STYLE_LINE_HEIGHT, 35);
- showWeekLabel->SetLineBreakMode(UILabel::LINE_BREAK_ADAPT);
- showWeekLabel->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER);
- showWeekLabel->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 28);
- /* ----------------------------------- 电池 ----------------------------------- */
- batteryimage = new UIImageView();
- if (batteryimage == nullptr)
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "PullUpDownView::ClearAllConnectedStatusComponentsView");
+ }
+ /* -------------------------------------------------------------------------- */
+ /***
+ * @brief 初始化时间,日期,星期,电池,信号强度
+ */
+ void PullUpDownView::InitBaseData()
+ {
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::InitBaseData");
+ if (group1 == nullptr)
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "batteryimage new fail");
- return false;
+ group1 = new UIViewGroup();
+ if (group1 == nullptr)
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "group1 new fail");
+ return;
+ }
}
- batteryimage->SetPosition(258, 180, BATTERY_IMAGE_WIDTH, BATTERY_IMAGE_HEIGHT);
- std::string batteryimagesPath = "/user/res/Battery/Battery-E.bin";
- batteryimage->SetSrc(batteryimagesPath.c_str());
- /* -------------------------------------------------------------------------- */
- progress = new UIBoxProgress();
- if (progress == nullptr)
+ group1->SetPosition(132, 80, 202, 40);
+ group1->SetStyle(STYLE_BACKGROUND_OPA, 0);
+ /* -------------------------------- NoSignal -------------------------------- */
+ if (NoSignal == nullptr)
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "progress new fail");
- return false;
+ NoSignal = new UIImageView();
+ if (NoSignal == nullptr)
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "NoSignal new fail");
+ return;
+ }
}
- progress->SetPosition(206, 180, PROGRESS_WIDTH, PROGRESS_HEIGHT);
- progress->SetValidHeight(PROGRESS_HEIGHT);
- progress->SetValidWidth(PROGRESS_WIDTH);
- progress->SetValue(20);
- // progress->SetRange(100,0);
- // const char *progressImageSrc = "/user/res/Battery/Battery_Normal.bin";
- // progress->SetImage(progressImageSrc, progressImageSrc);
- progress->SetBackgroundStyle(STYLE_BACKGROUND_OPA, 0x00);
- progress->SetBackgroundStyle(STYLE_TEXT_COLOR, 0xff000000);
- progress->SetForegroundStyle(STYLE_BACKGROUND_COLOR, 0xffffffff);
- progress->SetForegroundStyle(STYLE_TEXT_COLOR, 0xff000000);
- progress->SetForegroundStyle(STYLE_LINE_COLOR, 0xff45A5FF);
-
- group[DROPDOWNVIEW]->Add(progress);
- group[DROPDOWNVIEW]->Add(batteryimage);
- group[DROPDOWNVIEW]->Add(showTimeLabel);
- group[DROPDOWNVIEW]->Add(showDateLabel);
- group[DROPDOWNVIEW]->Add(showWeekLabel);
-
- /* -------------------------------------------------------------------------- */
- UpdateSignalStrengthStatusAndBatteryPosition();
- /* -------------------------------------------------------------------------- */
-
- return true;
- }
-
- // 初始化信号强度相关组件
- bool PullUpDownView::InitSingalComponentsView()
- {
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::InitSingalComponentsView");
- /* -------------------------------------------------------------------------- */
- NoSignal = new UIImageView();
- if (NoSignal == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "NoSignal new fail");
- return false;
- }
- NoSignal->SetPosition(160, 176, 36, 38);
+ NoSignal->SetPosition(0, (group1->GetHeight() - 38) / 2, 36, 38);
NoSignal->SetAutoEnable(false);
NoSignal->SetResizeMode(UIImageView::CENTER);
NoSignal->SetSrc(DROPDOWN_NOSIGNAL_IMAGE);
NoSignal->SetVisible(false);
- group[DROPDOWNVIEW]->Add(NoSignal);
- /* -------------------------------------------------------------------------- */
- MobileData = new UIImageView();
+ group1->Add(NoSignal);
+ /* ------------------------------- MobileData ------------------------------- */
if (MobileData == nullptr)
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "MobileData new fail");
- return false;
+ MobileData = new UIImageView();
+ if (MobileData == nullptr)
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "MobileData new fail");
+ return;
+ }
}
- MobileData->SetPosition(161, 180, 13, 15);
+ MobileData->SetPosition(1, 4, 13, 15);
MobileData->SetAutoEnable(false);
MobileData->SetResizeMode(UIImageView::CENTER);
MobileData->SetSrc(DROPDOWN_MOBILE_DATA_IMAGE);
MobileData->SetVisible(false);
- group[DROPDOWNVIEW]->Add(MobileData);
+ group1->Add(MobileData);
/* -------------------------------------------------------------------------- */
// 定义一个结构体,用于存储 ImageView 的信息
struct ImageViewInfo
};
// 待添加的 ImageView 信息列表
std::vector<ImageViewInfo> imageViewList = {
- {160, 204, 6, 6},
- {170, 196, 6, 14},
- {180, 188, 6, 22},
- {190, 180, 6, 30},
+ {0, 28, 6, 6},
+ {10, 20, 6, 14},
+ {20, 12, 6, 22},
+ {30, 4, 6, 30},
};
// 循环添加 ImageView 到相应的容器中
if (showSignalStrength[i] == nullptr)
{
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "showSignalStrength[%d] new fail", i);
- return false;
+ return;
}
}
showSignalStrength[i]->SetPosition(imageViewList[i].posX, imageViewList[i].posY, imageViewList[i].width, imageViewList[i].height);
showSignalStrength[i]->SetStyle(STYLE_BACKGROUND_COLOR, 0xffffffff);
showSignalStrength[i]->SetStyle(STYLE_BACKGROUND_OPA, 0xff);
showSignalStrength[i]->SetStyle(STYLE_BORDER_RADIUS, 10);
- group[DROPDOWNVIEW]->Add(showSignalStrength[i]);
+ group1->Add(showSignalStrength[i]);
showSignalStrength[i]->SetVisible(false);
}
- /* -------------------------------------------------------------------------- */
+ /* -------------------------------- Singal_4 -------------------------------- */
if (Singal_4 == nullptr)
{
Singal_4 = new UILabel();
}
- Singal_4->SetPosition(201, 176, 40, 47);
+ Singal_4->SetPosition(0, 0, 40, 47);
Singal_4->SetStyle(STYLE_TEXT_FONT, 34);
Singal_4->SetStyle(STYLE_LINE_HEIGHT, 40);
Singal_4->SetText("4G");
Singal_4->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER);
Singal_4->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 34);
Singal_4->SetVisible(false);
- group[DROPDOWNVIEW]->Add(Singal_4);
-
- return true;
- }
-
- // 获取信号强度
- int PullUpDownView::GetSignalStrength(void)
- {
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::GetSignalStrength");
- int SignalStrength = uapi_dev_runtime_get_cat1_signal(); // 信号强度
- return CalculateSignalBars(SignalStrength);
- }
-
- // 计算信号格
- int PullUpDownView::CalculateSignalBars(int signalStrength)
- {
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::CalculateSignalBars");
- if (signalStrength < 0 || signalStrength > 32 || signalStrength == 0)
- return 99; // 无信号 or Invalid signal strength
-
- // if (signalStrength == 32)
- // return 4; // Edge case where signalStrength is exactly at the upper boundary
-
- return (signalStrength / 8) + 1;
- }
-
-#if 1
- // 函数用于更新信号显示的UI
- void PullUpDownView::updateSignalDisplay()
- {
- int sim = uapi_dev_runtime_get_cat1_simstat();
- int cat1_powerOn = uapi_dev_runtime_get_cat1_powerstat();
- int signal = uapi_dev_runtime_get_cat1_signal();
- int network_on = uapi_dev_runtime_get_cat1_networkstat();
- int cat1_network_type = uapi_dev_runtime_get_cat1_networtype();
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "sim = %d", sim);
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "cat1_powerOn = %d", cat1_powerOn);
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "signal = %d", signal);
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "network_on = %d", network_on);
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "cat1_network_type = %d", cat1_network_type);
-
- const int SIGNAL_NO_SIGNAL = 99;
- const int NETWORK_TYPE_NO_NETWORK = 0;
- const int NETWORK_TYPE_4G = 4;
-
- if (sim == 0 || cat1_powerOn == 0)
- {
- // 无信号,无4G图标
- UpdateCat1NoSignalisplay(true);
- UpdateCat14GDisplay(false);
- UpdateSignalBarDisplay(CalculateSignalBars(signal), false);
- UpdateCat1MobileDataDisplay(false);
- }
- else if (cat1_powerOn == 1 && sim == 1)
+ group1->Add(Singal_4);
+ /* ----------------------------------- HD ----------------------------------- */
+ if (HD == nullptr)
{
- if (signal == SIGNAL_NO_SIGNAL) // 计算信号强度
- {
- // 无信号UI显示
- // UpdateCat1NoSignalisplay(true);
- // UpdateCat14GDisplay(false);
- UpdateSignalBarDisplay(CalculateSignalBars(signal), false);
- }
- else
- {
- // 信号强度显示
- UpdateCat1NoSignalisplay(false);
- // UpdateCat14GDisplay(true);
- UpdateSignalBarDisplay(CalculateSignalBars(signal), true);
- }
-
- if (network_on == 0)
- {
- // 无信号,无4G图标 显示
- // UpdateCat1NoSignalisplay(true);
- UpdateCat14GDisplay(false);
- UpdateCat1MobileDataDisplay(false);
- // UpdateSignalBarDisplay(CalculateSignalBars(signal), false);
- }
- else
+ HD = new UIImageView();
+ if (HD == nullptr)
{
- if (cat1_network_type == NETWORK_TYPE_NO_NETWORK)
- {
- // 无信号,无4G图标 显示
- // UpdateCat1NoSignalisplay(true);
- UpdateCat14GDisplay(false);
- UpdateCat1MobileDataDisplay(false);
- // UpdateSignalBarDisplay(CalculateSignalBars(signal), false);
- }
- else if (cat1_network_type == NETWORK_TYPE_4G)
- {
- // 有4G图标,正常显示信号
- // UpdateCat1NoSignalisplay(false);
- UpdateCat14GDisplay(true);
- UpdateCat1MobileDataDisplay(true);
- // UpdateSignalBarDisplay(CalculateSignalBars(signal), true);
- }
- else
- {
- // 无4G图标,正常显示信号
- // UpdateCat1NoSignalisplay(false);
- UpdateCat14GDisplay(false);
- UpdateCat1MobileDataDisplay(true);
- // UpdateSignalBarDisplay(CalculateSignalBars(signal), true);
- }
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "HD new fail");
+ return;
}
}
- }
-#else
- // 函数用于更新信号显示的UI
- void PullUpDownView::updateSignalDisplay()
- {
- int sim = uapi_dev_runtime_get_cat1_simstat();
- int cat1_powerOn = uapi_dev_runtime_get_cat1_powerstat();
- int signal = uapi_dev_runtime_get_cat1_signal();
- int network_on = uapi_dev_runtime_get_cat1_networkstat();
- int cat1_network_type = uapi_dev_runtime_get_cat1_networtype();
-
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "sim = %d", sim);
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "cat1_powerOn = %d", cat1_powerOn);
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "signal = %d", signal);
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "network_on = %d", network_on);
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "cat1_network_type = %d", cat1_network_type);
-
- const int SIGNAL_NO_SIGNAL = 99;
- const int NETWORK_TYPE_NO_NETWORK = 0;
- const int NETWORK_TYPE_4G = 4;
-
- bool showNoSignal = (sim == 0 || cat1_powerOn == 0 || signal == SIGNAL_NO_SIGNAL);
- bool showNo4GIcon = (network_on == 0 || cat1_network_type == NETWORK_TYPE_NO_NETWORK);
-
- if (showNoSignal)
- {
- UpdateCat1NoSignalisplay(true);
- UpdateCat14GDisplay(false);
- UpdateSignalBarDisplay(CalculateSignalBars(signal), false);
- }
- else
- {
- UpdateCat1NoSignalisplay(false);
- UpdateCat14GDisplay(!showNo4GIcon && cat1_network_type == NETWORK_TYPE_4G);
- UpdateSignalBarDisplay(CalculateSignalBars(signal), true);
- }
- }
-
-#endif
-
- // 更新信号强度显示
- void PullUpDownView::UpdateSignalBarDisplay(int signalBars, bool state)
- {
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::UpdateSignalBarDisplay");
- for (int i = 0; i < 4; i++)
- {
- showSignalStrength[i]->SetStyle(STYLE_BACKGROUND_COLOR, (i < signalBars) ? COLOR_SIGNAL_ON : COLOR_SIGNAL_OFF);
- showSignalStrength[i]->Invalidate();
- showSignalStrength[i]->SetVisible(state);
- }
- }
-
- // 更新无信号图标显示
- void PullUpDownView::UpdateCat1NoSignalisplay(bool state)
- {
- if (NoSignal != nullptr)
- {
- NoSignal->SetVisible(state);
- }
- }
-
- // 更新4G图标显示
- void PullUpDownView::UpdateCat14GDisplay(bool state)
- {
- if (Singal_4 != nullptr)
- {
- Singal_4->SetVisible(state);
- }
- UpdateBatteryPosition(state);
- }
-
- /*更新移动数据图标显示*/
- void PullUpDownView::UpdateCat1MobileDataDisplay(bool state)
- {
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::UpdateCat1MobileDataDisplay %d", state);
- if (MobileData != nullptr)
+ HD->SetPosition(88 + 10, (group1->GetHeight() - 30) / 2, 46, 30);
+ HD->SetAutoEnable(false);
+ HD->SetResizeMode(UIImageView::CENTER);
+ HD->SetSrc(DROPDOWN_HD_IMAGE);
+ HD->SetVisible(false);
+ group1->Add(HD);
+ /* ----------------------------------- 电池 ----------------------------------- */
+ batteryimage = new UIImageView();
+ if (batteryimage == nullptr)
{
- MobileData->SetVisible(state);
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "batteryimage new fail");
+ return;
}
- }
-
- // 更新电池位置
- void PullUpDownView::UpdateBatteryPosition(bool state)
- {
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::UpdateBatteryPosition");
- if (state == false)
+ batteryimage->SetPosition(HD->GetX() + HD->GetWidth() + 10, (group1->GetHeight() - 30) / 2, 48, 30);
+ std::string batteryimagesPath = "/user/res/Battery/Battery-E.bin";
+ batteryimage->SetSrc(batteryimagesPath.c_str());
+ group1->Add(batteryimage);
+ /* -------------------------------------------------------------------------- */
+ progress = new UIBoxProgress();
+ if (progress == nullptr)
{
- batteryimage->SetPosition(209, 180, BATTERY_IMAGE_WIDTH, BATTERY_IMAGE_HEIGHT);
- progress->SetPosition(215, 186, PROGRESS_WIDTH, PROGRESS_HEIGHT);
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "progress new fail");
+ return;
}
- else
+ progress->SetPosition(batteryimage->GetX() + 7, batteryimage->GetY() + 6, 30, 18);
+ progress->SetValidWidth(30);
+ progress->SetValidHeight(18);
+ progress->SetRange(100, 0);
+ progress->SetStyle(STYLE_BORDER_RADIUS, 3);
+ progress->SetBackgroundStyle(STYLE_BACKGROUND_OPA, 0x00);
+ progress->SetBackgroundStyle(STYLE_TEXT_COLOR, 0xff000000);
+ progress->SetForegroundStyle(STYLE_BACKGROUND_COLOR, 0xffffffff);
+ progress->SetForegroundStyle(STYLE_TEXT_COLOR, 0xff000000);
+ progress->SetForegroundStyle(STYLE_LINE_COLOR, 0xff45A5FF);
+ group1->Add(progress);
+ /* -------------------------------------------------------------------------- */
+ group[DROPDOWNVIEW]->Add(group1);
+ /* --------------------------------- 显示日期和星期 -------------------------------- */
+ showDateAndWeekLabel = new UILabel();
+ if (showDateAndWeekLabel == nullptr)
{
- batteryimage->SetPosition(258, 180, BATTERY_IMAGE_WIDTH, BATTERY_IMAGE_HEIGHT);
- progress->SetPosition(264, 186, PROGRESS_WIDTH, PROGRESS_HEIGHT);
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "showDateAndWeekLabel new fail");
+ return;
}
- batteryimage->Invalidate();
- progress->Invalidate();
- }
-
- // 更新信号强度和电池位置
- void PullUpDownView::UpdateSignalStrengthStatusAndBatteryPosition()
- {
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::UpdateSignalStrengthStatusAndBatteryPosition");
- updateSignalDisplay();
-
- int a2dp = uapi_a2dp_snk_get_device_connect_state();
- int hfp = uapi_hfp_connect_state();
- bool bluetoothstatus = (a2dp == 0 && hfp == 0) ? false : true;
- UpdateBlueToothStatus(bluetoothstatus);
- // UpdateBatteryPosition(GetSignalStrength());
+ showDateAndWeekLabel->SetPosition(128, 130, 210, 30);
+ showDateAndWeekLabel->SetStyle(STYLE_TEXT_FONT, 30);
+ showDateAndWeekLabel->SetStyle(STYLE_LINE_HEIGHT, 35);
+ showDateAndWeekLabel->SetTextColor(Color::GetColorFromRGBA(0xaa, 0xaa, 0xaa, 0xff));
+ showDateAndWeekLabel->SetLineBreakMode(UILabel::LINE_BREAK_ADAPT);
+ showDateAndWeekLabel->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER);
+ showDateAndWeekLabel->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 30);
+ group[DROPDOWNVIEW]->Add(showDateAndWeekLabel);
+ /* -------------------------------------------------------------------------- */
+ UpdateSignalStrengthStatusAndBatteryPosition();
+ /* -------------------------------------------------------------------------- */
+ MainPresenterSample::GetInstance()->UpdataBaseData();
+ /* -------------------------------------------------------------------------- */
}
-
- // 下拉视图初始化
- bool PullUpDownView::PullUpDownViewInit()
+ void PullUpDownView::ClearAll_2(void)
{
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::InitView");
-
- group[DROPDOWNVIEW] = new UIViewGroup();
- if (group[DROPDOWNVIEW] == nullptr)
+ if (group1 != nullptr)
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "group[DROPDOWNVIEW] new fail!!");
- return false;
- }
- group[DROPDOWNVIEW]->SetPosition(0, 0, 466, 466);
- group[DROPDOWNVIEW]->SetStyle(STYLE_BACKGROUND_OPA, OPA_TRANSPARENT);
- group[DROPDOWNVIEW]->SetViewIndex(0);
- group[DROPDOWNVIEW]->SetFullScreenBlur(true);
- createDropDownIconImageViwe();
- createDropDownConnectedStatusImageViwe();
-
- if (InitBaseData())
- {
- MainPresenterSample::GetInstance()->UpdataBaseData();
- }
- else
- {
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::InitBaseData Error!");
- return false;
- }
- SetTouchable(true);
- SetIntercept(true);
- Add(group[DROPDOWNVIEW]);
- return true;
- }
-
- void PullUpDownView::PreLoad(void)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "PullUpDownView::PreLoad");
- if (!viewiInitStatus)
- {
- PullUpDownViewInit();
- viewiInitStatus = true;
- }
- }
-
- void PullUpDownView::UnLoad(void)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "PullUpDownView::UnLoad");
- }
-
- // 更新手机连接状态
- void PullUpDownView::UpdatePhoneStatus(int status)
- {
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::UpdatePhoneStatus");
- if (showPhoneConnectedStatus == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "showPhoneConnectedStatus nullptr");
- return;
- }
- showPhoneConnectedStatus->SetSrc(status ? DROPDOWN_PHONECONNECTED_IMAGE : DROPDOWN_PHONEDISCONNECTED_IMAGE);
- showPhoneConnectedStatus->Invalidate();
-
- if (GetConnectedStatusView() != nullptr)
- GetConnectedStatusView()->UpdatePhoneConnectedStatus(status);
-
- return;
- }
-
- // 更新蓝牙耳机连接状态
- void PullUpDownView::UpdateEarPhoneStatus(int status)
- {
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::UpdateEarPhoneStatus");
- if (showEarPhoneConnectedStatus == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "showEarPhoneConnectedStatus nullptr");
- return;
- }
- showEarPhoneConnectedStatus->SetSrc(status ? DROPDOWN_EARPHONESCONNECTED_IMAGE : DROPDOWN_EARPHONESDISCONNECTED_IMAGE);
- showEarPhoneConnectedStatus->Invalidate();
-
- if (GetConnectedStatusView() != nullptr)
- GetConnectedStatusView()->UpdateEarPhoneConnectedStatus(status);
-
- return;
- }
-
- // 更新蓝牙连接状态
- void PullUpDownView::UpdateBlueToothStatus(int status)
- {
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::UpdateBlueToothStatus");
- if (showBluetoothConnectedStatus == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "showBluetoothConnectedStatus nullptr");
- return;
- }
- showBluetoothConnectedStatus->SetSrc(status ? DROPDOWN_BLUETOOTHCONNECTED_IMAGE : DROPDOWN_BLUETOOTHDISCONNECTED_IMAGE);
- showBluetoothConnectedStatus->Invalidate();
-
- if (GetConnectedStatusView() != nullptr)
- GetConnectedStatusView()->UpdateBlueToothConnectedStatus(status);
-
- return;
- }
-
- /*更新勿扰模式状态*/
- void PullUpDownView::UpdateDnotDisturbStatus(int status)
- {
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::UpdateDnotDisturbStatus");
- if (dropDnotDisturb != nullptr)
- {
- dropDnotDisturb->SetStyle(STYLE_BACKGROUND_COLOR, status ? 0xff8e20e2 : 0xff191919);
- dropDnotDisturb->Invalidate();
- }
- else
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "dropIconBackground[DNOTDISTURB_INDEX] is nullptr");
- return;
- }
- }
-
- UILabel *PullUpDownView::GetTimeLabel()
- {
- return showTimeLabel;
- }
- UILabel *PullUpDownView::GetDateLabel()
- {
- return showDateLabel;
- }
- UILabel *PullUpDownView::GetWeekLabel()
- {
- return showWeekLabel;
- }
- UIBoxProgress *PullUpDownView::GetProgress()
- {
- return progress;
- }
- /* ------------------------------ 下拉界面切换到连接状态视图 ----------------------------- */
- // 切换到"下拉控制中心"视图
- bool PullUpDownView::ChangeDropDownView(int16_t thisView)
- {
- if (group[thisView] == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "PullUpDownView::ChangeDropDownView");
- Add(group[thisView]);
- }
- return true;
- }
-
- // 切换到"连接状态"视图
- bool PullUpDownView::ChangeConnectedStatusView(int16_t thisView)
- {
- if (group[thisView] == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "PullUpDownView::ChangeConnectedStatusView");
- connectedStatusView = new ConnectedStatusView();
- if (connectedStatusView == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "PullUpDownView:: new scrollView[%d] fail", thisView);
- return false;
- }
- group[thisView] = connectedStatusView->ConnectedStatusViewInit();
- Add(group[thisView]);
- }
- return true;
- }
-
- struct PullUpDownViewMapper
- {
- const int16_t viewId;
- bool (PullUpDownView::*func)(int16_t thisView);
- };
-
- static const PullUpDownViewMapper ViewMapper[] = {
- {DROPDOWNVIEW, &PullUpDownView::ChangeDropDownView},
- {CONNECTEDSTATUSVIEW, &PullUpDownView::ChangeConnectedStatusView},
- };
-
- bool PullUpDownView::ClickFunc(int16_t interface)
- {
- int funcSize = sizeof(ViewMapper) / sizeof(ViewMapper[0]);
- for (int i = 0; i < funcSize; i++)
- {
- if (interface == ViewMapper[i].viewId)
+ group1->RemoveAll();
+ for (int i = 0; i < 4; i++)
{
- bool jug = (this->*(ViewMapper[i].func))(interface);
- if (jug == false)
+ if (showSignalStrength[i] != nullptr)
{
- return false;
+ delete showSignalStrength[i];
+ showSignalStrength[i] = nullptr;
}
- return true;
}
- }
- return false;
- }
-
- void PullUpDownView::ChangeView(int16_t hideView, int16_t showView)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "PullUpDownView::ChangeView");
- if (hideView > MAX_DROPDOWNVIEWID)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "PullUpDownView:: SystemViewId Overstep ones bounds");
- return;
- }
- group[hideView]->SetVisible(false);
- ClickFunc(showView);
- group[showView]->SetVisible(true);
- Invalidate();
- }
-
- ConnectedStatusView *PullUpDownView::GetConnectedStatusView(void)
- {
- return connectedStatusView;
- }
- /* -------------------------------------------------------------------------- */
-}
-#else
-/*
- * Copyright (c) CompanyNameMagicTag 2021-2021. All rights reserved.
- * Description: WeekStep
- * Author:
- * Create: 2021-09-11
- */
-
-#include "PullUpDownView.h"
-#include "wearable_log.h"
-#include "UiConfig.h"
-#include "common/screen.h"
-#include "main/include/MainPresenterSample.h"
-#include "screensetting/include/ScreenModels.h"
-#include "settings/include/SettingModel.h"
-#include "ui_resource_image.h"
-#include "dnotdisturb/include/DnotDisturbModel.h"
-#include "custom_utils.h"
-#include "custom_runtime.h"
-namespace OHOS
-{
-
- /* ---------------------------------- 坐标位置 ---------------------------------- */
- // 设置
- constexpr int16_t SETTING_IMG_X = 30;
- constexpr int16_t SETTING_IMG_Y = 186;
-
- // 手电筒
- constexpr int16_t LIGHTING_IMG_X = 76;
- constexpr int16_t LIGHTING_IMG_Y = 76;
-
- // 勿扰
- constexpr int16_t DNOTDISTURB_IMG_X = 186;
- constexpr int16_t DNOTDISTURB_IMG_Y = 30;
-
- // 省电
- constexpr int16_t SAVEPOWER_IMG_X = 296;
- constexpr int16_t SAVEPOWER_IMG_Y = 76;
-
- // 找手机
- constexpr int16_t FINDPHONE_IMG_X = 342;
- constexpr int16_t FINDPHONE_IMG_Y = 186;
-
- // line
- constexpr int16_t LINE_IMG_X = 193;
- constexpr int16_t LINE_IMG_Y = 430;
-
- // icon图片大小
- constexpr int16_t ICON_IMG_SIZE_W = 94;
- constexpr int16_t ICON_IMG_SIZE_H = 94;
-
- // 电池
- constexpr int16_t BATTERY_X = 209;
- constexpr int16_t BATTERY_Y = 180;
-
- // 时间
- constexpr int16_t TIME_LABEL_X = 172;
- constexpr int16_t TIME_LABEL_Y = 230;
-
- // 日期
- constexpr int16_t DATE_LABEL_X = 110;
- constexpr int16_t DATE_LABEL_Y = 300;
-
- // 星期
- constexpr int16_t WEEK_LABEL_X = 295;
- constexpr int16_t WEEK_LABEL_Y = 300;
-
- // 手机连接状态
- constexpr int16_t PHONECONNECTSTATUS_BUTTON_X = 123;
- constexpr int16_t PHONECONNECTSTATUS_BUTTON_Y = 350;
- constexpr int16_t PHONECONNECTSTATUS_BUTTON_W = 60;
- constexpr int16_t PHONECONNECTSTATUS_BUTTON_H = 60;
-
- // 耳机连接状态
- constexpr int16_t EARPHONESCONNECTSTATUS_BUTTON_X = 203;
- constexpr int16_t EARPHONESCONNECTSTATUS_BUTTON_Y = 350;
- constexpr int16_t EARPHONESCONNECTSTATUS_BUTTON_W = 60;
- constexpr int16_t EARPHONESCONNECTSTATUS_BUTTON_H = 60;
-
- // 蓝牙连接状态
- constexpr int16_t BLUETOOTHCONNECTSTATUS_BUTTON_X = 283;
- constexpr int16_t BLUETOOTHCONNECTSTATUS_BUTTON_Y = 350;
- constexpr int16_t BLUETOOTHCONNECTSTATUS_BUTTON_W = 60;
- constexpr int16_t BLUETOOTHCONNECTSTATUS_BUTTON_H = 60;
-
- static const int64_t COLOR_SIGNAL_ON = 0xffffffff;
- static const int64_t COLOR_SIGNAL_OFF = 0xff383838;
- static const int BATTERY_IMAGE_WIDTH = 48;
- static const int BATTERY_IMAGE_HEIGHT = 30;
- static const int PROGRESS_WIDTH = 30;
- static const int PROGRESS_HEIGHT = 18;
- /* -------------------------------------------------------------------------- */
- std::string getWeekString(int wday)
- {
- std::string weekDays[] = {"星期天", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};
- return weekDays[wday];
- }
- /* -------------------------------------------------------------------------- */
- static PullUpDownView *g_pPullUpDownView = nullptr;
- PullUpDownView::PullUpDownView()
- {
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::PullUpDownView");
- g_pPullUpDownView = this;
- }
-
- PullUpDownView::~PullUpDownView()
- {
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::~PullUpDownView");
- ClearAll();
- g_pPullUpDownView = nullptr;
- }
-
- PullUpDownView *PullUpDownView::GetInstance(void)
- {
- return g_pPullUpDownView;
- }
-
- // 清除信号强度相关组件
- void PullUpDownView::ClearAllSingalComponentsView()
- {
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::ClearAllSingalComponentsView");
- if (NoSignal != nullptr)
- {
- delete NoSignal;
- NoSignal = nullptr;
- }
-
- for (int i = 0; i < 4; i++)
- {
- if (showSignalStrength[i] != nullptr)
+ if (Singal_4 != nullptr)
{
- delete showSignalStrength[i];
- showSignalStrength[i] = nullptr;
+ delete Singal_4;
+ Singal_4 = nullptr;
}
- }
-
- if (Singal_4 != nullptr)
- {
- delete Singal_4;
- Singal_4 = nullptr;
- }
- }
-
- // 清除所有与连接状态相关的视图组件
- void PullUpDownView::ClearAllConnectedStatusComponentsView()
- {
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::ClearAllConnectedStatusComponentsView");
- if (connectedStatusBackgroundButton != nullptr)
- {
- delete connectedStatusBackgroundButton;
- connectedStatusBackgroundButton = nullptr;
- }
-
- if (showPhoneConnectedStatus != nullptr)
- {
- delete showPhoneConnectedStatus;
- showPhoneConnectedStatus = nullptr;
- }
-
- if (showEarPhoneConnectedStatus != nullptr)
- {
- delete showEarPhoneConnectedStatus;
- showEarPhoneConnectedStatus = nullptr;
- }
-
- if (showBluetoothConnectedStatus != nullptr)
- {
- delete showBluetoothConnectedStatus;
- showBluetoothConnectedStatus = nullptr;
- }
- }
-
- void PullUpDownView::ClearAll()
- {
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::ClearAll");
- RemoveAll();
- UnLoadPullUpDownImageRes(); // 切换slice的时候也要卸载资源放在ImageCach空间不够
- if (group[DROPDOWNVIEW] != nullptr)
- {
- group[DROPDOWNVIEW]->RemoveAll();
- group[DROPDOWNVIEW]->ClearBackgroundBlur();
- delete group[DROPDOWNVIEW];
- group[DROPDOWNVIEW] = nullptr;
- }
-
- for (int i = 0; i < MAX_INDEX; i++)
- {
- if (dropIconBackground[i] != nullptr)
+ if (NoSignal != nullptr)
{
- delete dropIconBackground[i];
- dropIconBackground[i] = nullptr;
+ delete NoSignal;
+ NoSignal = nullptr;
}
- }
-
- if (dropSetting != nullptr)
- {
- delete dropSetting;
- dropSetting = nullptr;
- }
-
- if (dropLighting != nullptr)
- {
- delete dropLighting;
- dropLighting = nullptr;
- }
-
- if (dropDnotDisturb != nullptr)
- {
- delete dropDnotDisturb;
- dropDnotDisturb = nullptr;
- }
-
- if (dropLine != nullptr)
- {
- delete dropLine;
- dropLine = nullptr;
- }
-
- if (dropSavePower != nullptr)
- {
- delete dropSavePower;
- dropSavePower = nullptr;
- }
-
- if (drofindPhone != nullptr)
- {
- delete drofindPhone;
- drofindPhone = nullptr;
- }
-
- if (showTimeLabel != nullptr)
- {
- delete showTimeLabel;
- showTimeLabel = nullptr;
- }
-
- if (showDateLabel != nullptr)
- {
- delete showDateLabel;
- showDateLabel = nullptr;
- }
-
- if (showWeekLabel != nullptr)
- {
- delete showWeekLabel;
- showWeekLabel = nullptr;
- }
- /* -------------------------------------------------------------------------- */
- ClearAllSingalComponentsView();
- ClearAllConnectedStatusComponentsView();
- /* -------------------------------------------------------------------------- */
- if (batteryimage != nullptr)
- {
- delete batteryimage;
- batteryimage = nullptr;
- }
-
- if (progress != nullptr)
- {
- delete progress;
- progress = nullptr;
- }
-
- if (progresscallback_ != nullptr)
- {
- delete progresscallback_;
- progresscallback_ = nullptr;
- }
-
- if (progressanimator_ != nullptr)
- {
- progressanimator_->Stop();
- delete progressanimator_;
- progressanimator_ = nullptr;
- }
-
- if (connectedStatusView != nullptr)
- {
- delete connectedStatusView;
- connectedStatusView = nullptr;
- group[CONNECTEDSTATUSVIEW] = nullptr;
- }
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::ClearAll end!!");
- }
-
- /// @brief 初始化icon图标背景
- /// @param void
- void PullUpDownView::InitViewImgBackGround(void)
- {
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::InitViewImgBackGround");
- for (int i = 0; i < MAX_INDEX; i++)
- {
- dropIconBackground[i] = new UIImageView();
- if (dropIconBackground[i] == nullptr)
+ if (MobileData != nullptr)
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "dropIconBackground[%d] new fail", i);
- return;
+ delete MobileData;
+ MobileData = nullptr;
}
- group[DROPDOWNVIEW]->Add(dropIconBackground[i]);
- }
- dropIconBackground[SETTING_INDEX]->SetPosition(SETTING_IMG_X, SETTING_IMG_Y);
- dropIconBackground[LIGHTING_INDEX]->SetPosition(LIGHTING_IMG_X, LIGHTING_IMG_Y);
- dropIconBackground[DNOTDISTURB_INDEX]->SetPosition(DNOTDISTURB_IMG_X, DNOTDISTURB_IMG_Y);
- dropIconBackground[SAVEPOWER_INDEX]->SetPosition(SAVEPOWER_IMG_X, SAVEPOWER_IMG_Y);
- dropIconBackground[FINDPHONE_INDEX]->SetPosition(FINDPHONE_IMG_X, FINDPHONE_IMG_Y);
- // for (int i = 0; i < MAX_INDEX; i++)
- // {
- // if (i == DNOTDISTURB_INDEX && DnotDisturbModel::GetInstance().GetDoNotDisturbModeEnabled() == true)
- // {
- // ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, dropIconBackground[i], DROPDOWN_ICONELLIPSEPURPLE);
- // }
- // else
- // {
- // ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, dropIconBackground[i], DROPDOWN_ICONELLIPSEBLACK);
- // }
- // group[DROPDOWNVIEW]->Add(dropIconBackground[i]);
- // }
- }
-
- /// @brief 初始化icon图标
- /// @param void
- void PullUpDownView::InitViewImg(void)
- {
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::InitViewImg");
- UIView::OnClickListener *clickListener = (UIView::OnClickListener *)OHOS::MainPresenterSample::GetInstance();
- InitViewImgBackGround();
- /* ---------------------------------- 下拉设置图片 ---------------------------------- */
- dropSetting = new UIImageView();
- if (dropSetting == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "dropSetting new fail");
- return;
- }
- dropSetting->SetPosition(SETTING_IMG_X, SETTING_IMG_Y, ICON_IMG_SIZE_W, ICON_IMG_SIZE_H);
- dropSetting->SetAutoEnable(false);
- dropSetting->SetResizeMode(UIImageView::CENTER);
- // ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, dropSetting, DROPDOWN_SETTING);
- dropSetting->SetViewId(DROPDOWN_CLICK_SETTING); // 进入设置界面
- dropSetting->SetTouchable(true);
- dropSetting->SetOnClickListener(clickListener);
- /* ----------------------------------- 蓝牙 ----------------------------------- */
- dropLighting = new UIImageView();
- if (dropLighting == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "dropLighting new fail");
- return;
- }
- dropLighting->SetPosition(LIGHTING_IMG_X, LIGHTING_IMG_Y, ICON_IMG_SIZE_W, ICON_IMG_SIZE_H);
- dropLighting->SetAutoEnable(false);
- dropLighting->SetResizeMode(UIImageView::CENTER);
- // ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, dropLighting, DROPDOWN_BLUETOOTH);
- dropLighting->SetViewId(DROPDOWN_CLICK_BLUETOOTH); // 进入亮屏界面
- dropLighting->SetTouchable(true);
- dropLighting->SetOnClickListener(clickListener);
- /* ----------------------------------- 勿扰模式 ----------------------------------- */
- dropDnotDisturb = new UIImageView();
- if (dropDnotDisturb == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "dropDnotDisturb new fail");
- return;
- }
- dropDnotDisturb->SetPosition(DNOTDISTURB_IMG_X, DNOTDISTURB_IMG_Y, ICON_IMG_SIZE_W, ICON_IMG_SIZE_H);
- dropDnotDisturb->SetAutoEnable(false);
- dropDnotDisturb->SetResizeMode(UIImageView::CENTER);
- // ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, dropDnotDisturb, DROPDOWN_DNOTDISTURB);
- dropDnotDisturb->SetViewId(DROPDOWN_CLICK_DNOTDISTURB); // 进入勿扰模式界面
- dropDnotDisturb->SetTouchable(true);
- dropDnotDisturb->SetOnClickListener(clickListener);
- /* ----------------------------------- 省电 ----------------------------------- */
- dropSavePower = new UIImageView();
- if (dropSavePower == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "dropSavePower new fail");
- return;
- }
- dropSavePower->SetPosition(SAVEPOWER_IMG_X, SAVEPOWER_IMG_Y, ICON_IMG_SIZE_W, ICON_IMG_SIZE_H);
- dropSavePower->SetAutoEnable(false);
- dropSavePower->SetResizeMode(UIImageView::CENTER);
- // ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, dropSavePower, DROPDOWN_SAVEPOWER);
- dropSavePower->SetViewId(DROPDOWN_CLICK_SAVEELE); // 进入省电界面
-
- dropSavePower->SetTouchable(true);
- dropSavePower->SetOnClickListener(clickListener);
- /* ----------------------------------- 找手机 ---------------------------------- */
- drofindPhone = new UIImageView();
- if (drofindPhone == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "drofindPhone new fail");
- return;
- }
- drofindPhone->SetPosition(FINDPHONE_IMG_X, FINDPHONE_IMG_Y, ICON_IMG_SIZE_W, ICON_IMG_SIZE_H);
- drofindPhone->SetAutoEnable(false);
- drofindPhone->SetResizeMode(UIImageView::CENTER);
- // ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, drofindPhone, DROPDOWN_FINDPHONE);
- drofindPhone->SetViewId(DROPDOWN_CLICK_FINDMYPHONE); // 找手机界面
- drofindPhone->SetTouchable(true);
- drofindPhone->SetOnClickListener(clickListener);
- /* -------------------------------- dropLine -------------------------------- */
- dropLine = new UIImageView();
- if (dropLine == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "dropLine new fail");
- return;
- }
- dropLine->SetPosition(LINE_IMG_X, LINE_IMG_Y, ICON_IMG_SIZE_W, ICON_IMG_SIZE_H);
- // ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, dropLine, DROPDOWN_LINE);
- /* -------------------------------- 添加组件到视图上 -------------------------------- */
- group[DROPDOWNVIEW]->Add(dropSetting);
- group[DROPDOWNVIEW]->Add(dropLighting);
- group[DROPDOWNVIEW]->Add(dropDnotDisturb);
- group[DROPDOWNVIEW]->Add(dropSavePower);
- group[DROPDOWNVIEW]->Add(drofindPhone);
- group[DROPDOWNVIEW]->Add(dropLine);
- }
-
- // 获取手机连接状态
- bool PullUpDownView::GetPhoneConnectedStatus(void)
- {
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::GetPhoneConnectedStatus");
- // uint8_t ret = uapi_dev_runtime_get_ble_connect_stat();
- // WEARABLE_LOGI(WEARABLE_LOG_MODULE_APP, "ble phone connect stat = %d", ret);
- // if (ret == 1)
- // return true;
- // else
- // return false;
-
- return SettingModel::GetInstance().GetPhoneConnectStatus();
- }
-
- // 获取蓝牙耳机连接状态
- bool PullUpDownView::GetEarPhoneConnectedStatus(void)
- {
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::GetEarPhoneConnectedStatus");
- // uint8_t ret = uapi_dev_runtime_get_earphone_connect_stat();
- // WEARABLE_LOGI(WEARABLE_LOG_MODULE_APP, "earphone connect stat = %d", ret);
- // if (ret == 1)
- // return true;
- // else
- // return false;
-
- return SettingModel::GetInstance().GetEarPhoneConnectStatus();
- }
-
- // 获取蓝牙连接状态
- bool PullUpDownView::GetBlueToothConnectedStatus(void)
- {
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::GetBlueToothConnectedStatus");
- // uint8_t ret = uapi_dev_runtime_get_br_connect_stat();
- // WEARABLE_LOGI(WEARABLE_LOG_MODULE_APP, "br connect stat = %d [0 no connect, 1 a2dp, 2 hfp, 3 both]", ret);
- // if (ret != 0)
- // return true;
- // else
- // return false;
-
- return SettingModel::GetInstance().GetBlueToothConnectStatus();
- }
-
- /// @brief 初始化与连接状态相关组件
- /// @param void
- void PullUpDownView::InitConnectedStatusImage(void)
- {
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::InitConnectedStatusImage");
- connectedStatusBackgroundButton = new UIButton();
- if (connectedStatusBackgroundButton == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "connectedStatusBackgroundButton new fail");
- return;
- }
- connectedStatusBackgroundButton->SetPosition(113, 348, 240, 64);
- connectedStatusBackgroundButton->SetViewId(CONNECTEDSTATUSBACKGROUNDBUTTON);
- connectedStatusBackgroundButton->SetStyle(STYLE_BACKGROUND_COLOR, 0xffffffff);
- connectedStatusBackgroundButton->SetStyle(STYLE_BACKGROUND_OPA, 0x00);
- connectedStatusBackgroundButton->SetStyleForState(STYLE_BACKGROUND_COLOR, 0xffffffff, UIButton::PRESSED);
- connectedStatusBackgroundButton->SetStyleForState(STYLE_BACKGROUND_OPA, 0x00, UIButton::PRESSED);
- connectedStatusBackgroundButton->SetStyleForState(STYLE_BORDER_COLOR, 0xffffffff, UIButton::PRESSED);
- connectedStatusBackgroundButton->SetStyleForState(STYLE_BORDER_OPA, 0x00, UIButton::PRESSED);
- UIView::OnClickListener *clickListener = (UIView::OnClickListener *)OHOS::MainPresenterSample::GetInstance();
- connectedStatusBackgroundButton->SetOnClickListener(clickListener);
- group[DROPDOWNVIEW]->Add(connectedStatusBackgroundButton);
- /* -------------------------------- 显示手机连接状态 -------------------------------- */
- showPhoneConnectedStatus = new UIImageView();
- if (showPhoneConnectedStatus == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "showPhoneConnectedStatus new fail");
- return;
- }
- showPhoneConnectedStatus->SetPosition(PHONECONNECTSTATUS_BUTTON_X, PHONECONNECTSTATUS_BUTTON_Y, PHONECONNECTSTATUS_BUTTON_W, PHONECONNECTSTATUS_BUTTON_H);
- showPhoneConnectedStatus->SetAutoEnable(false);
- showPhoneConnectedStatus->SetResizeMode(UIImageView::CENTER);
- showPhoneConnectedStatus->SetStyle(STYLE_BORDER_RADIUS, 30);
- // if (GetPhoneConnectedStatus()) // 获取手机连接状态
- // {
- // ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, showPhoneConnectedStatus, DROPDOWN_PHONECONNECTED);
- // }
- // else
- // {
- // ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, showPhoneConnectedStatus, DROPDOWN_PHONEDISCONNECTED);
- // }
-
- /* -------------------------------- 显示耳机连接状态 -------------------------------- */
- showEarPhoneConnectedStatus = new UIImageView();
- if (showEarPhoneConnectedStatus == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "showEarPhoneConnectedStatus new fail");
- return;
- }
- showEarPhoneConnectedStatus->SetPosition(EARPHONESCONNECTSTATUS_BUTTON_X, EARPHONESCONNECTSTATUS_BUTTON_Y, EARPHONESCONNECTSTATUS_BUTTON_W, EARPHONESCONNECTSTATUS_BUTTON_H);
- showEarPhoneConnectedStatus->SetAutoEnable(false);
- showEarPhoneConnectedStatus->SetResizeMode(UIImageView::CENTER);
- showEarPhoneConnectedStatus->SetStyle(STYLE_BORDER_RADIUS, 30);
- // if (GetEarPhoneConnectedStatus()) // 获取耳机连接状态
- // {
- // ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, showEarPhoneConnectedStatus, DROPDOWN_EARPHONESCONNECTED);
- // }
- // else
- // {
- // ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, showEarPhoneConnectedStatus, DROPDOWN_EARPHONESDISCONNECTED);
- // }
-
- /* -------------------------------- 显示蓝牙连接状态 -------------------------------- */
- showBluetoothConnectedStatus = new UIImageView();
- if (showBluetoothConnectedStatus == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "showBluetoothConnectedStatus new fail");
- return;
- }
- showBluetoothConnectedStatus->SetPosition(BLUETOOTHCONNECTSTATUS_BUTTON_X, BLUETOOTHCONNECTSTATUS_BUTTON_Y, BLUETOOTHCONNECTSTATUS_BUTTON_W, BLUETOOTHCONNECTSTATUS_BUTTON_H);
- showBluetoothConnectedStatus->SetAutoEnable(false);
- showBluetoothConnectedStatus->SetResizeMode(UIImageView::CENTER);
- showBluetoothConnectedStatus->SetStyle(STYLE_BORDER_RADIUS, 30);
- // if (GetBlueToothConnectedStatus()) // 获取蓝牙连接状态
- // {
- // ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, showBluetoothConnectedStatus, DROPDOWN_BLUETOOTHCONNECTED);
- // }
- // else
- // {
- // ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, showBluetoothConnectedStatus, DROPDOWN_BLUETOOTHDISCONNECTED);
- // }
- /* -------------------------------------------------------------------------- */
- group[DROPDOWNVIEW]->Add(showPhoneConnectedStatus);
- group[DROPDOWNVIEW]->Add(showEarPhoneConnectedStatus);
- group[DROPDOWNVIEW]->Add(showBluetoothConnectedStatus);
- }
-
- /***
- * @brief 初始化时间,日期,星期,电池,信号强度
- */
- bool PullUpDownView::InitBaseData()
- {
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::InitBaseData");
- if (!InitSingalComponentsView())
- {
- return false;
- }
-
- /* ---------------------------------- 时间显示 ---------------------------------- */
- showTimeLabel = new UILabel();
- if (showTimeLabel == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "showTimeLabel new fail");
- return false;
- }
- showTimeLabel->SetPosition(TIME_LABEL_X, TIME_LABEL_Y);
- showTimeLabel->SetStyle(STYLE_TEXT_FONT, 50);
- showTimeLabel->SetStyle(STYLE_LINE_HEIGHT, 59);
- showTimeLabel->SetLineBreakMode(UILabel::LINE_BREAK_ADAPT);
- showTimeLabel->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER);
- showTimeLabel->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 50);
- /* ---------------------------------- 日期显示 ---------------------------------- */
- showDateLabel = new UILabel();
- if (showDateLabel == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "showDateLabel new fail");
- return false;
- }
- showDateLabel->SetPosition(DATE_LABEL_X, DATE_LABEL_Y);
- showDateLabel->SetStyle(STYLE_TEXT_FONT, 30);
- showDateLabel->SetStyle(STYLE_LINE_HEIGHT, 35);
- showDateLabel->SetLineBreakMode(UILabel::LINE_BREAK_ADAPT);
- showDateLabel->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER);
- showDateLabel->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 30);
- /* ---------------------------------- 星期显示 ---------------------------------- */
- showWeekLabel = new UILabel();
- if (showWeekLabel == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "showWeekLabel new fail");
- return false;
- }
- showWeekLabel->SetPosition(WEEK_LABEL_X, WEEK_LABEL_Y);
- showWeekLabel->SetStyle(STYLE_TEXT_FONT, 30);
- showWeekLabel->SetStyle(STYLE_LINE_HEIGHT, 35);
- showWeekLabel->SetLineBreakMode(UILabel::LINE_BREAK_ADAPT);
- showWeekLabel->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER);
- showWeekLabel->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 28);
- /* ----------------------------------- 电池 ----------------------------------- */
- batteryimage = new UIImageView();
- if (batteryimage == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "batteryimage new fail");
- return false;
- }
- batteryimage->SetPosition(258, 180, BATTERY_IMAGE_WIDTH, BATTERY_IMAGE_HEIGHT);
- std::string batteryimagesPath = "/user/res/Battery/Battery-E.bin";
- batteryimage->SetSrc(batteryimagesPath.c_str());
- /* -------------------------------------------------------------------------- */
- progress = new UIBoxProgress();
- if (progress == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "progress new fail");
- return false;
- }
- progress->SetPosition(206, 180, PROGRESS_WIDTH, PROGRESS_HEIGHT);
- progress->SetValidHeight(PROGRESS_HEIGHT);
- progress->SetValidWidth(PROGRESS_WIDTH);
-
- // progress->SetValue(value);
- const char *progressImageSrc = "/user/res/Battery/Battery_Normal.bin";
- progress->SetImage(progressImageSrc, nullptr);
- progress->SetBackgroundStyle(STYLE_BACKGROUND_OPA, 0x00);
- progress->SetBackgroundStyle(STYLE_TEXT_COLOR, 0xff000000);
- progress->SetForegroundStyle(STYLE_BACKGROUND_COLOR, 0xffffffff);
- progress->SetForegroundStyle(STYLE_TEXT_COLOR, 0xff000000);
- progress->SetForegroundStyle(STYLE_LINE_COLOR, 0xff45A5FF);
-
- group[DROPDOWNVIEW]->Add(progress);
- group[DROPDOWNVIEW]->Add(batteryimage);
- group[DROPDOWNVIEW]->Add(showTimeLabel);
- group[DROPDOWNVIEW]->Add(showDateLabel);
- group[DROPDOWNVIEW]->Add(showWeekLabel);
-
- /* -------------------------------------------------------------------------- */
- UpdateSignalStrengthStatusAndBatteryPosition();
- /* -------------------------------------------------------------------------- */
-
- return true;
- }
-
- // 初始化信号强度相关组件
- bool PullUpDownView::InitSingalComponentsView()
- {
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::InitSingalComponentsView");
- /* -------------------------------------------------------------------------- */
- NoSignal = new UIImageView();
- if (NoSignal == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "NoSignal new fail");
- return false;
- }
- NoSignal->SetPosition(160, 176, 36, 38);
- NoSignal->SetAutoEnable(false);
- NoSignal->SetResizeMode(UIImageView::CENTER);
- // ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, NoSignal, DROPDOWN_NOSIGNAL);
- NoSignal->SetVisible(false);
- group[DROPDOWNVIEW]->Add(NoSignal);
- /* -------------------------------------------------------------------------- */
- // 定义一个结构体,用于存储 ImageView 的信息
- struct ImageViewInfo
- {
- int posX;
- int posY;
- int width;
- int height;
- };
- // 待添加的 ImageView 信息列表
- std::vector<ImageViewInfo> imageViewList = {
- {160, 204, 6, 6},
- {170, 196, 6, 14},
- {180, 188, 6, 22},
- {190, 180, 6, 30},
- };
-
- // 循环添加 ImageView 到相应的容器中
- for (int i = 0; i < 4; i++)
- {
- if (showSignalStrength[i] == nullptr)
- {
- showSignalStrength[i] = new UIImageView();
- if (showSignalStrength[i] == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "showSignalStrength[%d] new fail", i);
- return false;
- }
+ if (HD != nullptr)
+ {
+ delete HD;
+ HD = nullptr;
}
- showSignalStrength[i]->SetPosition(imageViewList[i].posX, imageViewList[i].posY, imageViewList[i].width, imageViewList[i].height);
- showSignalStrength[i]->SetStyle(STYLE_BACKGROUND_COLOR, 0xffffffff);
- showSignalStrength[i]->SetStyle(STYLE_BACKGROUND_OPA, 0xff);
- showSignalStrength[i]->SetStyle(STYLE_BORDER_RADIUS, 10);
- group[DROPDOWNVIEW]->Add(showSignalStrength[i]);
- showSignalStrength[i]->SetVisible(false);
+ if (batteryimage != nullptr)
+ {
+ delete batteryimage;
+ batteryimage = nullptr;
+ }
+ if (progress != nullptr)
+ {
+ delete progress;
+ progress = nullptr;
+ }
+ delete group1;
+ group1 = nullptr;
}
- /* -------------------------------------------------------------------------- */
- if (Singal_4 == nullptr)
+ if (showDateAndWeekLabel != nullptr)
{
- Singal_4 = new UILabel();
+ delete showDateAndWeekLabel;
+ showDateAndWeekLabel = nullptr;
}
- Singal_4->SetPosition(201, 176, 40, 47);
- Singal_4->SetStyle(STYLE_TEXT_FONT, 34);
- Singal_4->SetStyle(STYLE_LINE_HEIGHT, 40);
- Singal_4->SetText("4G");
- Singal_4->SetLineBreakMode(UILabel::LINE_BREAK_ADAPT);
- Singal_4->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER);
- Singal_4->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 34);
- Singal_4->SetVisible(false);
- group[DROPDOWNVIEW]->Add(Singal_4);
-
- return true;
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "PullUpDownView::ClearAll_2 over!!");
}
// 获取信号强度
return (signalStrength / 8) + 1;
}
-#if 0
// 函数用于更新信号显示的UI
void PullUpDownView::updateSignalDisplay()
{
UpdateCat1NoSignalisplay(true);
UpdateCat14GDisplay(false);
UpdateSignalBarDisplay(CalculateSignalBars(signal), false);
+ UpdateCat1MobileDataDisplay(false);
}
else if (cat1_powerOn == 1 && sim == 1)
{
- if (signal == SIGNAL_NO_SIGNAL)
+ if (signal == SIGNAL_NO_SIGNAL) // 计算信号强度
{
// 无信号UI显示
- UpdateCat1NoSignalisplay(true);
- UpdateCat14GDisplay(false);
+ // UpdateCat1NoSignalisplay(true);
+ // UpdateCat14GDisplay(false);
UpdateSignalBarDisplay(CalculateSignalBars(signal), false);
}
else
{
// 信号强度显示
UpdateCat1NoSignalisplay(false);
- UpdateCat14GDisplay(true);
+ // UpdateCat14GDisplay(true);
UpdateSignalBarDisplay(CalculateSignalBars(signal), true);
}
+
if (network_on == 0)
{
// 无信号,无4G图标 显示
- UpdateCat1NoSignalisplay(true);
+ // UpdateCat1NoSignalisplay(true);
UpdateCat14GDisplay(false);
- UpdateSignalBarDisplay(CalculateSignalBars(signal), false);
+ UpdateCat1MobileDataDisplay(false);
+ // UpdateSignalBarDisplay(CalculateSignalBars(signal), false);
}
else
{
if (cat1_network_type == NETWORK_TYPE_NO_NETWORK)
{
// 无信号,无4G图标 显示
- UpdateCat1NoSignalisplay(true);
+ // UpdateCat1NoSignalisplay(true);
UpdateCat14GDisplay(false);
- UpdateSignalBarDisplay(CalculateSignalBars(signal), false);
+ UpdateCat1MobileDataDisplay(false);
+ // UpdateSignalBarDisplay(CalculateSignalBars(signal), false);
}
else if (cat1_network_type == NETWORK_TYPE_4G)
{
// 有4G图标,正常显示信号
- UpdateCat1NoSignalisplay(false);
+ // UpdateCat1NoSignalisplay(false);
UpdateCat14GDisplay(true);
- UpdateSignalBarDisplay(CalculateSignalBars(signal), true);
+ UpdateCat1MobileDataDisplay(true);
+ // UpdateSignalBarDisplay(CalculateSignalBars(signal), true);
}
else
{
// 无4G图标,正常显示信号
- UpdateCat1NoSignalisplay(false);
+ // UpdateCat1NoSignalisplay(false);
UpdateCat14GDisplay(false);
- UpdateSignalBarDisplay(CalculateSignalBars(signal), true);
+ UpdateCat1MobileDataDisplay(true);
+ // UpdateSignalBarDisplay(CalculateSignalBars(signal), true);
}
}
}
}
-#else
- // 函数用于更新信号显示的UI
- void PullUpDownView::updateSignalDisplay()
- {
- int sim = uapi_dev_runtime_get_cat1_simstat();
- int cat1_powerOn = uapi_dev_runtime_get_cat1_powerstat();
- int signal = uapi_dev_runtime_get_cat1_signal();
- int network_on = uapi_dev_runtime_get_cat1_networkstat();
- int cat1_network_type = uapi_dev_runtime_get_cat1_networtype();
-
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "sim = %d", sim);
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "cat1_powerOn = %d", cat1_powerOn);
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "signal = %d", signal);
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "network_on = %d", network_on);
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "cat1_network_type = %d", cat1_network_type);
-
- const int SIGNAL_NO_SIGNAL = 99;
- const int NETWORK_TYPE_NO_NETWORK = 0;
- const int NETWORK_TYPE_4G = 4;
-
- bool showNoSignalUI = (sim == 0 || cat1_powerOn == 0 || signal == SIGNAL_NO_SIGNAL);
- bool showNoNetworkUI = (network_on == 0 || cat1_network_type == NETWORK_TYPE_NO_NETWORK);
-
- bool show4GIcon = (cat1_network_type == NETWORK_TYPE_4G);
-
- UpdateCat1NoSignalisplay(showNoSignalUI);
- UpdateCat14GDisplay(show4GIcon);
- UpdateSignalBarDisplay(CalculateSignalBars(signal), !(showNoSignalUI || showNoNetworkUI));
- }
-#endif
-
// 更新信号强度显示
void PullUpDownView::UpdateSignalBarDisplay(int signalBars, bool state)
{
}
}
- // æ\9b´æ\96°ç\94µæ± ä½\8dç½®
- void PullUpDownView::UpdateBatteryPosition(int signalBars)
+ // æ\9c\89HDä¸\80å®\9aæ\9c\894G
+ void PullUpDownView::UpdateHDDisplay(bool state)
{
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::UpdateBatteryPosition");
- if (signalBars == 99)
- {
- batteryimage->SetPosition(209, 180, BATTERY_IMAGE_WIDTH, BATTERY_IMAGE_HEIGHT);
- progress->SetPosition(215, 186, PROGRESS_WIDTH, PROGRESS_HEIGHT);
- }
- else
+ if (HD != nullptr)
{
- batteryimage->SetPosition(258, 180, BATTERY_IMAGE_WIDTH, BATTERY_IMAGE_HEIGHT);
- progress->SetPosition(264, 186, PROGRESS_WIDTH, PROGRESS_HEIGHT);
+ HD->SetVisible(state);
}
- batteryimage->Invalidate();
- progress->Invalidate();
- }
-
- // 更新信号强度和电池位置
- void PullUpDownView::UpdateSignalStrengthStatusAndBatteryPosition()
- {
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::UpdateSignalStrengthStatusAndBatteryPosition");
- updateSignalDisplay();
- UpdateBatteryPosition(GetSignalStrength());
}
- bool PullUpDownView::PullUpDownViewInit()
+ /*更新移动数据图标显示*/
+ void PullUpDownView::UpdateCat1MobileDataDisplay(bool state)
{
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::InitView");
-
- group[DROPDOWNVIEW] = new UIViewGroup();
- if (group[DROPDOWNVIEW] == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "group[DROPDOWNVIEW] new fail!!");
- return false;
- }
- group[DROPDOWNVIEW]->SetPosition(0, 0, 466, 466);
- group[DROPDOWNVIEW]->SetStyle(STYLE_BACKGROUND_OPA, OPA_TRANSPARENT);
- group[DROPDOWNVIEW]->SetViewIndex(0);
- group[DROPDOWNVIEW]->SetFullScreenBlur(true);
- InitViewImg();
- InitConnectedStatusImage();
-
- if (InitBaseData())
- {
- MainPresenterSample::GetInstance()->UpdataBaseData();
- }
- else
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::UpdateCat1MobileDataDisplay %d", state);
+ if (MobileData != nullptr)
{
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::InitBaseData Error!");
- return false;
+ MobileData->SetVisible(state);
}
- SetTouchable(true);
- SetIntercept(true);
- Add(group[DROPDOWNVIEW]);
- return true;
}
- /*预加载下拉视图的图片资源*/
- void PullUpDownView::PreLoadPullUpDownImageRes(void)
+ void PullUpDownView::UpdateXPosition(void)
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "PullUpDownView::PreLoadPullUpDownImageRes");
- if (!resLoadStatus)
+ // 判断相关组件是否有效
+ if (MobileData && HD && Singal_4 && NoSignal && batteryimage && progress)
{
- /* -------------------------------------------------------------------------- */
- for (int i = 0; i < MAX_INDEX; i++)
+ // 获取各个组件的可见状态
+ bool mobileDataVisible = MobileData->IsVisible(); // 移动数据
+ bool hdVisible = HD->IsVisible(); // HD
+ bool signal4Visible = Singal_4->IsVisible(); // 4G
+ bool noSignalVisible = NoSignal->IsVisible(); // 无信号
+
+ int x;
+ int signalWidth = NoSignal->GetWidth();
+ int batteryWidth = batteryimage->GetWidth();
+ int spacing = 10;
+
+ if (noSignalVisible) // 无信号时的处理
+ {
+ x = (group1->GetWidth() - (signalWidth + batteryWidth + spacing)) / 2;
+ NoSignal->SetX(x);
+ batteryimage->SetX(x + signalWidth + spacing);
+ progress->SetX(batteryimage->GetX() + 7);
+ }
+ else // 有信号时的处理
{
- if (i == DNOTDISTURB_INDEX && DnotDisturbModel::GetInstance().GetDoNotDisturbModeEnabled() == true)
+ if (!signal4Visible) // 无 4G
{
- ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, dropIconBackground[i], DROPDOWN_ICONELLIPSEPURPLE);
+ x = (group1->GetWidth() - (signalWidth + batteryWidth + spacing)) / 2;
+ for (int i = 0; i < 4; i++)
+ {
+ if (showSignalStrength[i] != nullptr)
+ {
+ showSignalStrength[i]->SetX(x + 10);
+ }
+ }
+ batteryimage->SetX(showSignalStrength[3]->GetX() + signalWidth + spacing);
+ progress->SetX(batteryimage->GetX() + 7);
}
- else
+ else // 有 4G
{
- ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, dropIconBackground[i], DROPDOWN_ICONELLIPSEBLACK);
+ int additionalWidth = hdVisible ? HD->GetWidth() : 0;
+ x = (group1->GetWidth() - (signalWidth + Singal_4->GetWidth() + additionalWidth + batteryWidth + spacing * (2 + hdVisible))) / 2;
+ for (int i = 0; i < 4; i++)
+ {
+ if (showSignalStrength[i] != nullptr)
+ {
+ showSignalStrength[i]->SetX(x + 10);
+ }
+ }
+ Singal_4->SetX(showSignalStrength[3]->GetX() + signalWidth + spacing);
+ if (hdVisible) // 无 HD
+ {
+ HD->SetX(Singal_4->GetX() + Singal_4->GetWidth() + spacing);
+ batteryimage->SetX(HD->GetX() + HD->GetWidth() + spacing);
+ progress->SetX(batteryimage->GetX() + 7);
+ }
+ else // 有 HD
+ {
+ batteryimage->SetX(Singal_4->GetX() + Singal_4->GetWidth() + spacing);
+ progress->SetX(batteryimage->GetX() + 7);
+ }
+
+ if (mobileDataVisible) // 如果有移动数据图标,设置其位置
+ {
+ MobileData->SetX(showSignalStrength[0]->GetX());
+ }
}
}
- /* -------------------------------------------------------------------------- */
- ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, dropSetting, DROPDOWN_SETTING);
- ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, dropLighting, DROPDOWN_BLUETOOTH);
- ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, dropDnotDisturb, DROPDOWN_DNOTDISTURB);
- ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, dropSavePower, DROPDOWN_SAVEPOWER);
- ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, drofindPhone, DROPDOWN_FINDPHONE);
- ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, dropLine, DROPDOWN_LINE);
- /* -------------------------------------------------------------------------- */
- bool phoneStatus = GetPhoneConnectedStatus(); // 获取手机连接状态
- bool EarPhoneStatus = GetEarPhoneConnectedStatus(); // 获取耳机连接状态
- bool blueToothStatus = GetBlueToothConnectedStatus(); // 获取蓝牙连接状态
- ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, showPhoneConnectedStatus, phoneStatus ? DROPDOWN_PHONECONNECTED : DROPDOWN_PHONEDISCONNECTED);
- ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, showEarPhoneConnectedStatus, EarPhoneStatus ? DROPDOWN_EARPHONESCONNECTED : DROPDOWN_EARPHONESDISCONNECTED);
- ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, showBluetoothConnectedStatus, blueToothStatus ? DROPDOWN_BLUETOOTHCONNECTED : DROPDOWN_BLUETOOTHDISCONNECTED);
-
- /* -------------------------------------------------------------------------- */
- ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, NoSignal, DROPDOWN_NOSIGNAL);
- /* -------------------------------------------------------------------------- */
- resLoadStatus = true;
+ // 使相关组件无效化以触发重绘
+ MobileData->Invalidate();
+ HD->Invalidate();
+ Singal_4->Invalidate();
+ NoSignal->Invalidate();
+ batteryimage->Invalidate();
+ progress->Invalidate();
}
}
- /*卸载下拉视图的图片资源*/
- void PullUpDownView::UnLoadPullUpDownImageRes(void)
+ // 更新信号强度和电池位置
+ void PullUpDownView::UpdateSignalStrengthStatusAndBatteryPosition()
+ {
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::UpdateSignalStrengthStatusAndBatteryPosition");
+ updateSignalDisplay(); // 函数用于更新信号显示的UI
+ UpdateXPosition();
+
+ /*更新蓝牙连接状态*/
+ int a2dp = uapi_a2dp_snk_get_device_connect_state();
+ int hfp = uapi_hfp_connect_state();
+ bool bluetoothstatus = (a2dp == 0 && hfp == 0) ? false : true;
+ UpdateBlueToothStatus(bluetoothstatus);
+ }
+
+ UILabel *PullUpDownView::GetDateAndWeekLabel(void)
+ {
+ return showDateAndWeekLabel;
+ }
+ /* -------------------------------------------------------------------------- */
+ AppGroupView *PullUpDownView::DropDownCardPage1Init(void)
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "PullUpDownView::UnLoadPullUpDownImageRes");
- if (resLoadStatus)
+ if (dropDownCardPage1 == nullptr)
{
- ImageInfo *img = nullptr;
- for (int i = 0; i < MAX_INDEX; i++)
+ dropDownCardPage1 = new DropDownCardPage1();
+ if (dropDownCardPage1 == nullptr)
{
- dropIconBackground[i]->SetSrc(img);
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "dropDownCardPage1 new fail!!");
+ return nullptr;
}
- /* -------------------------------------------------------------------------- */
- dropSetting->SetSrc(img);
- dropLighting->SetSrc(img);
- dropDnotDisturb->SetSrc(img);
- dropSavePower->SetSrc(img);
- drofindPhone->SetSrc(img);
- dropLine->SetSrc(img);
- /* -------------------------------------------------------------------------- */
- showPhoneConnectedStatus->SetSrc(img);
- showEarPhoneConnectedStatus->SetSrc(img);
- showBluetoothConnectedStatus->SetSrc(img);
- /* -------------------------------------------------------------------------- */
- NoSignal->SetSrc(img);
- /* -------------------------------------------------------------------------- */
- bool isDoNotDisturbOpen = DnotDisturbModel::GetInstance().GetDoNotDisturbModeEnabled(); // 勿扰是否开启
- ImageCacheManager::GetInstance().UnloadOneInMultiRes(isDoNotDisturbOpen ? DROPDOWN_ICONELLIPSEPURPLE : DROPDOWN_ICONELLIPSEBLACK, DROPDOWN_IAMGES);
- /* -------------------------------------------------------------------------- */
- ImageCacheManager::GetInstance().UnloadOneInMultiRes(DROPDOWN_SETTING, DROPDOWN_IAMGES);
- ImageCacheManager::GetInstance().UnloadOneInMultiRes(DROPDOWN_BLUETOOTH, DROPDOWN_IAMGES);
- ImageCacheManager::GetInstance().UnloadOneInMultiRes(DROPDOWN_DNOTDISTURB, DROPDOWN_IAMGES);
- ImageCacheManager::GetInstance().UnloadOneInMultiRes(DROPDOWN_SAVEPOWER, DROPDOWN_IAMGES);
- ImageCacheManager::GetInstance().UnloadOneInMultiRes(DROPDOWN_FINDPHONE, DROPDOWN_IAMGES);
- ImageCacheManager::GetInstance().UnloadOneInMultiRes(DROPDOWN_LINE, DROPDOWN_IAMGES);
- /* -------------------------------------------------------------------------- */
- bool phoneStatus = GetPhoneConnectedStatus(); // 获取手机连接状态
- bool EarPhoneStatus = GetEarPhoneConnectedStatus(); // 获取耳机连接状态
- bool blueToothStatus = GetBlueToothConnectedStatus(); // 获取蓝牙连接状态
- ImageCacheManager::GetInstance().UnloadOneInMultiRes(phoneStatus ? DROPDOWN_PHONECONNECTED : DROPDOWN_PHONEDISCONNECTED, DROPDOWN_IAMGES);
- ImageCacheManager::GetInstance().UnloadOneInMultiRes(EarPhoneStatus ? DROPDOWN_EARPHONESCONNECTED : DROPDOWN_EARPHONESDISCONNECTED, DROPDOWN_IAMGES);
- ImageCacheManager::GetInstance().UnloadOneInMultiRes(blueToothStatus ? DROPDOWN_BLUETOOTHCONNECTED : DROPDOWN_BLUETOOTHDISCONNECTED, DROPDOWN_IAMGES);
- /* -------------------------------------------------------------------------- */
- ImageCacheManager::GetInstance().UnloadOneInMultiRes(DROPDOWN_NOSIGNAL, DROPDOWN_IAMGES);
- /* -------------------------------------------------------------------------- */
- resLoadStatus = false;
}
+ return dropDownCardPage1;
}
-
- void PullUpDownView::PreLoad(void)
+ AppGroupView *PullUpDownView::DropDownCardPage2Init(void)
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "PullUpDownView::PreLoad");
- if (!viewiInitStatus)
+ if (dropDownCardPage2 == nullptr)
{
- PullUpDownViewInit();
- viewiInitStatus = true;
+ dropDownCardPage2 = new DropDownCardPage2();
+ if (dropDownCardPage2 == nullptr)
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "dropDownCardPage2 new fail!!");
+ return nullptr;
+ }
}
-
- PreLoadPullUpDownImageRes();
+ return dropDownCardPage2;
}
-
- void PullUpDownView::UnLoad(void)
+ struct DropDownSwipViewMapper
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "PullUpDownView::UnLoad");
- UnLoadPullUpDownImageRes();
- }
-
- // 更新手机连接状态
- void PullUpDownView::UpdatePhoneStatus(int status)
+ const int16_t viewId;
+ AppGroupView *(PullUpDownView::*func)(void);
+ };
+ static const DropDownSwipViewMapper g_pageMapper[] = {
+ {0, &PullUpDownView::DropDownCardPage1Init},
+ {1, &PullUpDownView::DropDownCardPage2Init},
+ };
+ AppGroupView *PullUpDownView::CreatePage(int32_t PageId)
{
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::UpdatePhoneStatus");
- if (showPhoneConnectedStatus == nullptr)
+ uint16_t i;
+ AppGroupView *view = nullptr;
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "CreatePage %d", PageId);
+
+ for (i = 0; i < sizeof(g_pageMapper) / sizeof(g_pageMapper[0]); i++)
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "showPhoneConnectedStatus nullptr");
- return;
+ if (g_pageMapper[i].viewId == PageId)
+ {
+ view = (this->*(g_pageMapper[i].func))();
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "CreatePage view:%p", view);
+ return view;
+ }
}
- ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, showPhoneConnectedStatus, (status ? DROPDOWN_PHONECONNECTED : DROPDOWN_PHONEDISCONNECTED));
- showPhoneConnectedStatus->Invalidate();
-
- if (GetConnectedStatusView() != nullptr)
- GetConnectedStatusView()->UpdatePhoneConnectedStatus(status);
-
- return;
+ return nullptr; // 如果没有找到匹配的视图ID,返回 nullptr
}
+ void PullUpDownView::ClearAll_3(void)
+ {
+ if (dropDownswipeViewList != nullptr)
+ {
+ dropDownswipeViewList->RemoveAll();
- // 更新蓝牙耳机连接状态
- void PullUpDownView::UpdateEarPhoneStatus(int status)
+ delete dropDownswipeViewList;
+ dropDownswipeViewList = nullptr;
+ }
+ if (dropDownCardPage1 != nullptr)
+ {
+ delete dropDownCardPage1;
+ dropDownCardPage1 = nullptr;
+ }
+ if (dropDownCardPage2 != nullptr)
+ {
+ delete dropDownCardPage2;
+ dropDownCardPage2 = nullptr;
+ }
+ for (int i = 0; i < sizeof(g_pageMapper) / sizeof(g_pageMapper[0]); i++)
+ {
+ recordCard[i] = nullptr;
+ }
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "PullUpDownView::ClearAll_3 over!!");
+ }
+ // 创建与滑动列表相关组件
+ void PullUpDownView::CreateDropDownswipeViewListView(void)
{
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::UpdateEarPhoneStatus");
- if (showEarPhoneConnectedStatus == nullptr)
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::CreateDropDownswipeViewListView start!!");
+ dropDownswipeViewList = new UISwipeView(UISwipeView::HORIZONTAL); // 水平方向
+ if (nullptr == dropDownswipeViewList)
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "showEarPhoneConnectedStatus nullptr");
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "dropDownswipeViewList new fail!!");
return;
}
- ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, showEarPhoneConnectedStatus, (status ? DROPDOWN_EARPHONESCONNECTED : DROPDOWN_EARPHONESDISCONNECTED));
- showPhoneConnectedStatus->Invalidate();
-
- if (GetConnectedStatusView() != nullptr)
- GetConnectedStatusView()->UpdateEarPhoneConnectedStatus(status);
-
- return;
+ dropDownswipeViewList->SetStyle(STYLE_BACKGROUND_COLOR, Color::Black().full);
+ dropDownswipeViewList->SetPosition(18, 180, 430, 210); // 0 : X; 0 : Y
+ dropDownswipeViewList->SetAnimatorTime(200); // 200:animator drag time(ms)
+ dropDownswipeViewList->SetDraggable(true);
+ dropDownswipeViewList->SetTouchable(true);
+ for (uint16_t i = 0; i < 2; i++)
+ {
+ recordCard[i] = CreatePage(i);
+ if (nullptr == recordCard[i])
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "recordCard[%d] is nullptr!!", i);
+ return;
+ }
+ recordCard[i]->InitView(this);
+ dropDownswipeViewList->Add(recordCard[i]);
+ }
+ dropDownswipeViewList->SetOnSwipeListener(this);
+ group[DROPDOWNVIEW]->Add(dropDownswipeViewList);
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::CreateDropDownswipeViewListView over!!");
}
-
- // 更新蓝牙连接状态
- void PullUpDownView::UpdateBlueToothStatus(int status)
+ /* ------------------------------------ 4 ----------------------------------- */
+ void PullUpDownView::UpdateSwipviewSelect(bool value)
{
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::UpdateBlueToothStatus");
- if (showBluetoothConnectedStatus == nullptr)
+ if (swipviewSelect)
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "showBluetoothConnectedStatus nullptr");
- return;
+ swipviewSelect->SetSrc(value ? DROPDOWN_SELECT_1_IMAGE : DROPDOWN_SELECT_2_IMAGE);
+ swipviewSelect->Invalidate();
}
- ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, showBluetoothConnectedStatus, (status ? DROPDOWN_BLUETOOTHCONNECTED : DROPDOWN_BLUETOOTHDISCONNECTED));
- showPhoneConnectedStatus->Invalidate();
-
- if (GetConnectedStatusView() != nullptr)
- GetConnectedStatusView()->UpdateBlueToothConnectedStatus(status);
-
- return;
}
- /*更新勿扰模式状态*/
- void PullUpDownView::UpdateDnotDisturbStatus(int status)
+ void PullUpDownView::CreateView4()
{
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::UpdateDnotDisturbStatus");
- for (int i = 0; i < MAX_INDEX; i++)
+ /* ----------------------------- swipviewSelect ----------------------------- */
+ if (swipviewSelect == nullptr)
{
- if (dropIconBackground[i] == nullptr)
+ swipviewSelect = new UIImageView();
+ if (swipviewSelect == nullptr)
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "dropIconBackground[%d] is nullptr", i);
+ return;
}
}
-
- if (dropIconBackground[DNOTDISTURB_INDEX] != nullptr)
+ swipviewSelect->SetPosition(217, 410, 33, 12);
+ swipviewSelect->SetSrc(DROPDOWN_SELECT_1_IMAGE);
+ group[DROPDOWNVIEW]->Add(swipviewSelect);
+ /* ---------------------------------- line ---------------------------------- */
+ if (line == nullptr)
{
- if (status)
+ line = new UIImageView();
+ if (line == nullptr)
{
- ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, dropIconBackground[DNOTDISTURB_INDEX], DROPDOWN_ICONELLIPSEPURPLE);
- }
- else
- {
- ScreenModels::GetInstance()->LoadAppImages(DROPDOWN_IAMGES, dropIconBackground[DNOTDISTURB_INDEX], DROPDOWN_ICONELLIPSEBLACK);
+ return;
}
- dropIconBackground[DNOTDISTURB_INDEX]->Invalidate();
}
- else
+ line->SetPosition(193, 440, 80, 8);
+ line->SetSrc(DROPDOWN_LINE_IMAGE);
+ group[DROPDOWNVIEW]->Add(line);
+ }
+
+ void PullUpDownView::ClearAll_4(void)
+ {
+ if (swipviewSelect != nullptr)
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "dropIconBackground[DNOTDISTURB_INDEX] is nullptr");
- return;
+ delete swipviewSelect;
+ swipviewSelect = nullptr;
+ }
+ if (line != nullptr)
+ {
+ delete line;
+ line = nullptr;
+ }
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "PullUpDownView::ClearAll_4 over!!");
+ }
+
+ /* -------------------------------------------------------------------------- */
+ // 下拉视图初始化
+ bool PullUpDownView::PullUpDownViewInit()
+ {
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::InitView");
+
+ group[DROPDOWNVIEW] = new UIViewGroup();
+ if (group[DROPDOWNVIEW] == nullptr)
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "group[DROPDOWNVIEW] new fail!!");
+ return false;
}
+ group[DROPDOWNVIEW]->SetPosition(0, 0, 466, 466);
+ group[DROPDOWNVIEW]->SetStyle(STYLE_BACKGROUND_OPA, OPA_OPAQUE);
+ group[DROPDOWNVIEW]->SetViewIndex(0);
+ group[DROPDOWNVIEW]->SetFullScreenBlur(false); /*设置高斯模式*/
+ /* ----------------------------------- 1 ----------------------------------- */
+ CreateDropDownConnectionStatusImageViwe();
+ /* ------------------------------------ 2 ----------------------------------- */
+ InitBaseData();
+ /* ------------------------------------ 3 ----------------------------------- */
+ CreateDropDownswipeViewListView();
+ /* ------------------------------------ 4 ----------------------------------- */
+ CreateView4();
+ /* -------------------------------------------------------------------------- */
+
+ SetTouchable(true);
+ SetIntercept(true);
+ Add(group[DROPDOWNVIEW]);
+ return true;
}
- UILabel *PullUpDownView::GetTimeLabel()
+ void PullUpDownView::PreLoad(void)
{
- return showTimeLabel;
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "PullUpDownView::PreLoad");
+ if (!viewiInitStatus)
+ {
+ PullUpDownViewInit();
+ viewiInitStatus = true;
+ }
}
- UILabel *PullUpDownView::GetDateLabel()
+
+ void PullUpDownView::UnLoad(void)
{
- return showDateLabel;
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "PullUpDownView::UnLoad");
}
- UILabel *PullUpDownView::GetWeekLabel()
+
+ /*更新勿扰模式状态*/
+ void PullUpDownView::UpdateDnotDisturbStatus(int status)
{
- return showWeekLabel;
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::UpdateDnotDisturbStatus");
}
+
UIBoxProgress *PullUpDownView::GetProgress()
{
return progress;
Invalidate();
}
+ /*获取连接状态视图*/
ConnectedStatusView *PullUpDownView::GetConnectedStatusView(void)
{
return connectedStatusView;
}
/* -------------------------------------------------------------------------- */
}
-#endif