xref: /MusicFree/src/pages/setting/index.tsx (revision ec26b76829169f3fa0606bb9b21624aad61d6594)
1bf6e62f2S猫头猫import React from 'react';
2bc2d140eS猫头猫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 ThemeText from '@/components/themeText';
81c06c799S猫头猫import { SafeAreaView } from 'react-native-safe-area-context';
9bc2d140eS猫头猫import StatusBar from '@/components/statusBar';
10bf6e62f2S猫头猫
11bf6e62f2S猫头猫interface ISettingProps {}
12bf6e62f2S猫头猫export default function Setting(props: ISettingProps) {
13bf6e62f2S猫头猫  const route = useRoute<any>();
14bf6e62f2S猫头猫  const navigation = useNavigation();
15bf6e62f2S猫头猫  const type: string = route.params?.type;
16bf6e62f2S猫头猫  const settingItem = settingTypes[type];
17bf6e62f2S猫头猫
18bf6e62f2S猫头猫  const {colors} = useTheme();
19bf6e62f2S猫头猫
20bf6e62f2S猫头猫  return (
211c06c799S猫头猫    <SafeAreaView style={style.wrapper}>
221c06c799S猫头猫      <StatusBar></StatusBar>
23bf6e62f2S猫头猫      <Appbar style={[style.appbar, {backgroundColor: colors.primary}]}>
24bf6e62f2S猫头猫          <Appbar.BackAction
25bf6e62f2S猫头猫            color={colors.text}
26bf6e62f2S猫头猫            onPress={() => {
27bf6e62f2S猫头猫              navigation.goBack();
28bf6e62f2S猫头猫            }}></Appbar.BackAction>
29bf6e62f2S猫头猫          <Appbar.Header style={style.header}>
30*ec26b768S猫头猫            <ThemeText style={style.header} fontSize='title' fontWeight='semibold'>{settingItem?.title}</ThemeText>
31bf6e62f2S猫头猫          </Appbar.Header>
32bf6e62f2S猫头猫        </Appbar>
33bf6e62f2S猫头猫      <settingItem.component></settingItem.component>
341c06c799S猫头猫    </SafeAreaView>
35bf6e62f2S猫头猫  );
36bf6e62f2S猫头猫}
37bf6e62f2S猫头猫
38bf6e62f2S猫头猫const style = StyleSheet.create({
39bf6e62f2S猫头猫  wrapper: {
40bf6e62f2S猫头猫    width: rpx(750),
411c06c799S猫头猫    flex: 1
42bf6e62f2S猫头猫  },
43bf6e62f2S猫头猫  appbar: {
44bf6e62f2S猫头猫    shadowColor: 'transparent',
451c06c799S猫头猫    backgroundColor: '#2b333eaa'
46bf6e62f2S猫头猫  },
47bf6e62f2S猫头猫  header: {
48bf6e62f2S猫头猫    backgroundColor: 'transparent',
49bf6e62f2S猫头猫    shadowColor: 'transparent',
50bf6e62f2S猫头猫  },
51bf6e62f2S猫头猫});
52