From f3ac526b51e1449bdf5a8c6630dd6daa6c79033d Mon Sep 17 00:00:00 2001 From: lyswhut Date: Mon, 27 Mar 2023 21:03:21 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=AD=8C=E5=8D=95=E6=8E=92?= =?UTF-8?q?=E5=BA=8F=E5=88=97=E8=A1=A8=E6=BB=9A=E5=8A=A8=E9=87=8D=E7=BD=AE?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- publish/changeLog.md | 4 ++++ src/screens/Home/Views/SongList/HeaderBar/SortTab.tsx | 6 ++++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/publish/changeLog.md b/publish/changeLog.md index 139fe7c..546b658 100644 --- a/publish/changeLog.md +++ b/publish/changeLog.md @@ -5,3 +5,7 @@ ### 优化 - 更新设置界面菜单布局 + +### 修复 + +- 修复歌单排序列表滚动重置问题 diff --git a/src/screens/Home/Views/SongList/HeaderBar/SortTab.tsx b/src/screens/Home/Views/SongList/HeaderBar/SortTab.tsx index 4604ca0..79a852b 100644 --- a/src/screens/Home/Views/SongList/HeaderBar/SortTab.tsx +++ b/src/screens/Home/Views/SongList/HeaderBar/SortTab.tsx @@ -1,4 +1,4 @@ -import React, { forwardRef, useImperativeHandle, useMemo, useState } from 'react' +import React, { forwardRef, useImperativeHandle, useMemo, useRef, useState } from 'react' import { ScrollView, TouchableOpacity } from 'react-native' import songlistState, { type SortInfo, type Source } from '@/store/songlist/state' import { useI18n } from '@/lang' @@ -20,9 +20,11 @@ export default forwardRef(({ onSortChange }, ref) => const [activeId, setActiveId] = useState('') const t = useI18n() const theme = useTheme() + const scrollViewRef = useRef(null) useImperativeHandle(ref, () => ({ setSource(source, activeTab) { + scrollViewRef.current?.scrollTo({ x: 0 }) setSortList(songlistState.sortList[source] as SortInfo[]) setActiveId(activeTab) }, @@ -38,7 +40,7 @@ export default forwardRef(({ onSortChange }, ref) => } return ( - + { sorts.map(s => ( { handleSortChange(s.id) }} key={s.id}>