77 lines
2.2 KiB
C++
77 lines
2.2 KiB
C++
/*----------------------------------------------------------------------------
|
|
* Copyright (c) TJD Technologies Co., Ltd. 2025. All rights reserved.
|
|
*
|
|
* Description: TjdUiAppDockView.h
|
|
*
|
|
* Author: luziquan@ss-tjd.com
|
|
*
|
|
* Create: 2024-06-15
|
|
*--------------------------------------------------------------------------*/
|
|
|
|
#ifndef TJD_UI_APP_DOCK_VIEW_H
|
|
#define TJD_UI_APP_DOCK_VIEW_H
|
|
|
|
#include "TjdUiAppDockPresenter.h"
|
|
#include "View.h"
|
|
#include "components/ui_button.h"
|
|
#include "components/ui_image_view.h"
|
|
#include "components/ui_label_button_ext.h"
|
|
#include "components/ui_label_ext.h"
|
|
#include "components/ui_list.h"
|
|
#include "components/ui_scroll_view.h"
|
|
#include "components/tjd_ui_custom_slipflow_view.h"
|
|
#include "components/ui_view_group.h"
|
|
#include <vector>
|
|
|
|
namespace TJD {
|
|
|
|
struct SliceInfo
|
|
{
|
|
uint16_t sliceId;
|
|
uint32_t resId;
|
|
uint16_t nameId;
|
|
};
|
|
|
|
class TjdUiAppDockPresenter;
|
|
class TjdUiAppDockView : public OHOS::View<TjdUiAppDockPresenter>,
|
|
public OHOS::UIViewGroup,
|
|
public OHOS::UISlipflowView::OnSlipflowScrollListener
|
|
{
|
|
public:
|
|
TjdUiAppDockView();
|
|
~TjdUiAppDockView();
|
|
static TjdUiAppDockView *GetInstance(void);
|
|
void OnStart() override;
|
|
void OnStop() override;
|
|
OHOS::ImageInfo *FindImageInfo(int16_t id);
|
|
|
|
void InitZeroView();
|
|
void UITestSlipflowView();
|
|
void UITestSlipflowViewInitFlow();
|
|
|
|
bool OnScroll(int16_t distance) override;
|
|
void OnScrollUpStart() override;
|
|
void OnScrollUpEnd() override;
|
|
bool OnRemove(OHOS::UIView *view) override;
|
|
void OnRefreshPageOpaScale(OHOS::UIView *view, int16_t xOffset, int16_t yOffset) override;
|
|
|
|
private:
|
|
void InitDockItemInfo();
|
|
std::vector<SliceInfo> dockItemInfo_;
|
|
|
|
OHOS::UIViewGroup *zeroGroup_ = nullptr;
|
|
OHOS::UIImageView *bg_ = nullptr;
|
|
OHOS::UILabel *zeroLabel_ = nullptr;
|
|
|
|
OHOS::UIScrollView *container_ = nullptr;
|
|
TjdUICustomSlipflowView *slipflow_ = nullptr;
|
|
OHOS::UILabelExt *label_ = nullptr;
|
|
OHOS::UILabel *slipUpNoticelabel_ = nullptr;
|
|
uint16_t lastIndex_ = 0;
|
|
bool isShowBtnGrp_ = false;
|
|
uint8_t loadNum_ = 0;
|
|
};
|
|
|
|
} // namespace TJD
|
|
|
|
#endif |