From: luozheng <1732036298@qq.com> Date: Sun, 29 Sep 2024 09:30:15 +0000 (+0800) Subject: 解决,#695,手表,弧形列表使用编码器上下滑动时没有和列表显示一样增加震动反馈bug X-Git-Url: http://git.snicker.com.cn/css/static/gitweb.css?a=commitdiff_plain;h=refs%2Fchanges%2F1055%2F1;p=mirrors%2FFD230.git 解决,#695,手表,弧形列表使用编码器上下滑动时没有和列表显示一样增加震动反馈bug --- diff --git a/code/sdk/application/wearable/fd230app/nativeui/applist/src/ApplistView.cpp b/code/sdk/application/wearable/fd230app/nativeui/applist/src/ApplistView.cpp index 103e9b429..897e2edd3 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/applist/src/ApplistView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/applist/src/ApplistView.cpp @@ -16,7 +16,7 @@ namespace OHOS { static constexpr int16 NUM_2 = 2; static constexpr int16 MAX_SCROLL_DIS = 1000; -static constexpr int16 ROTATE_FACTOR_2 = 2; +static constexpr int16 ROTATE_FACTOR_2 = 2.0; #define ARC_SCALE_LIST_SCALE_FACTOR (400)//(400) #define ARC_SCALE_LIST_X (50) @@ -289,17 +289,17 @@ void ApplistView::ArcScaleListStyleOnStart(void) ArcScaleList_->SetPosition(ARC_SCALE_LIST_X, ARC_SCALE_LIST_Y, ARC_SCALE_LIST_WIDTH, ARC_SCALE_LIST_HEIGHT); ArcScaleList_->SetItemTransformFunc(&TransformItemBaseOnPosition); ArcScaleList_->SetAdapter(ArcScaleListAdapter_); + ArcScaleList_->SetDraggable(true); ArcScaleList_->SetThrowDrag(true); ArcScaleList_->SetStyle(STYLE_BACKGROUND_OPA, OPA_TRANSPARENT); ArcScaleList_->SetScrollBlankSize(40);//(50); - ArcScaleList_->SetMaxScrollDistance(1000*2); // 1000: max scroll distance - ArcScaleList_->SetSwipeACCLevel(800); // 800: compensation distance - ArcScaleList_->SetDragACCLevel(5); // 5: drag acceleration + ArcScaleList_->SetMaxScrollDistance(MAX_SCROLL_DIS); ArcScaleList_->SetYScrollBarVisible(true); // ArcScaleList_->SetScrollStateListener(presenter_); ArcScaleList_->SetReboundSize(35); ArcScaleList_->EnableAutoAlign(true); ArcScaleList_->SetItemSpace(10); + ArcScaleList_->SetSelectPosition(ARC_SCALE_LIST_HEIGHT / 2); ArcScaleList_->SetRotateFactor(ROTATE_FACTOR_2); ArcScaleList_->RequestFocus(); ArcScaleList_->RefreshList();