xref: /MusicFree/src/pages/setting/index.tsx (revision bc2d140edac52b40998e03015825328dd5626154)
1bf6e62f2S猫头猫import React from 'react';
2*bc2d140eS猫头猫import { StyleSheet} from 'react-native';
3bf6e62f2S猫头猫import rpx from '@/utils/rpx';
4bf6e62f2S猫头猫import {useNavigation, useRoute, useTheme} from '@react-navigation/native';
5bf6e62f2S猫头猫import {Appbar} from 'react-native-paper';
6bf6e62f2S猫头猫import settingTypes from './settingTypes';
7bf6e62f2S猫头猫import {fontSizeConst, fontWeightConst} from '@/constants/uiConst';
8bf6e62f2S猫头猫import ThemeText from '@/components/themeText';
91c06c799S猫头猫import { SafeAreaView } from 'react-native-safe-area-context';
10*bc2d140eS猫头猫import StatusBar from '@/components/statusBar';
11bf6e62f2S猫头猫
12bf6e62f2S猫头猫interface ISettingProps {}
13bf6e62f2S猫头猫export default function Setting(props: ISettingProps) {
14bf6e62f2S猫头猫  const route = useRoute<any>();
15bf6e62f2S猫头猫  const navigation = useNavigation();
16bf6e62f2S猫头猫  const type: string = route.params?.type;
17bf6e62f2S猫头猫  const settingItem = settingTypes[type];
18bf6e62f2S猫头猫
19bf6e62f2S猫头猫  const {colors} = useTheme();
20bf6e62f2S猫头猫
21bf6e62f2S猫头猫  return (
221c06c799S猫头猫    <SafeAreaView style={style.wrapper}>
231c06c799S猫头猫      <StatusBar></StatusBar>
24bf6e62f2S猫头猫      <Appbar style={[style.appbar, {backgroundColor: colors.primary}]}>
25bf6e62f2S猫头猫          <Appbar.BackAction
26bf6e62f2S猫头猫            color={colors.text}
27bf6e62f2S猫头猫            onPress={() => {
28bf6e62f2S猫头猫              navigation.goBack();
29bf6e62f2S猫头猫            }}></Appbar.BackAction>
30bf6e62f2S猫头猫          <Appbar.Header style={style.header}>
31bf6e62f2S猫头猫            <ThemeText style={style.header}>{settingItem?.title}</ThemeText>
32bf6e62f2S猫头猫          </Appbar.Header>
33bf6e62f2S猫头猫        </Appbar>
34bf6e62f2S猫头猫      <settingItem.component></settingItem.component>
351c06c799S猫头猫    </SafeAreaView>
36bf6e62f2S猫头猫  );
37bf6e62f2S猫头猫}
38bf6e62f2S猫头猫
39bf6e62f2S猫头猫const style = StyleSheet.create({
40bf6e62f2S猫头猫  wrapper: {
41bf6e62f2S猫头猫    width: rpx(750),
421c06c799S猫头猫    flex: 1
43bf6e62f2S猫头猫  },
44bf6e62f2S猫头猫  appbar: {
45bf6e62f2S猫头猫    shadowColor: 'transparent',
461c06c799S猫头猫    backgroundColor: '#2b333eaa'
47bf6e62f2S猫头猫  },
48bf6e62f2S猫头猫  header: {
49bf6e62f2S猫头猫    backgroundColor: 'transparent',
50bf6e62f2S猫头猫    shadowColor: 'transparent',
51bf6e62f2S猫头猫    fontSize: fontSizeConst.big,
52bf6e62f2S猫头猫    fontWeight: fontWeightConst.bold,
53bf6e62f2S猫头猫  },
54bf6e62f2S猫头猫});
55