xref: /MusicFree/src/pages/musicDetail/components/navBar.tsx (revision bf6e62f27bf21a011995d7561e0093fae1a2d72e)
1*bf6e62f2S猫头猫import React, {useEffect} from 'react';
2*bf6e62f2S猫头猫import {AppState, StyleSheet, Text, View} from 'react-native';
3*bf6e62f2S猫头猫import rpx from '@/utils/rpx';
4*bf6e62f2S猫头猫import {IconButton} from 'react-native-paper';
5*bf6e62f2S猫头猫import MusicQueue from '@/common/musicQueue';
6*bf6e62f2S猫头猫import {useNavigation} from '@react-navigation/native';
7*bf6e62f2S猫头猫import Tag from '@/components/tag';
8*bf6e62f2S猫头猫import { fontSizeConst, fontWeightConst } from '@/constants/uiConst';
9*bf6e62f2S猫头猫
10*bf6e62f2S猫头猫interface INavBarProps {}
11*bf6e62f2S猫头猫export default function NavBar(props: INavBarProps) {
12*bf6e62f2S猫头猫  const navigation = useNavigation();
13*bf6e62f2S猫头猫  const musicItem = MusicQueue.useCurrentMusicItem();
14*bf6e62f2S猫头猫
15*bf6e62f2S猫头猫  return (
16*bf6e62f2S猫头猫    <View style={style.wrapper}>
17*bf6e62f2S猫头猫      <IconButton
18*bf6e62f2S猫头猫        icon="arrow-left"
19*bf6e62f2S猫头猫        size={rpx(48)}
20*bf6e62f2S猫头猫        color="white"
21*bf6e62f2S猫头猫        onPress={() => {
22*bf6e62f2S猫头猫          navigation.goBack();
23*bf6e62f2S猫头猫        }}></IconButton>
24*bf6e62f2S猫头猫      <View style={style.headerContent}>
25*bf6e62f2S猫头猫        <Text numberOfLines={1} style={style.headerTitleText}>
26*bf6e62f2S猫头猫          {musicItem?.title ?? ''}
27*bf6e62f2S猫头猫        </Text>
28*bf6e62f2S猫头猫        <View style={style.headerDesc}>
29*bf6e62f2S猫头猫          <Text style={style.headerArtistText}>{musicItem?.artist}</Text>
30*bf6e62f2S猫头猫          <Tag tagName={musicItem?.platform ?? ''}></Tag>
31*bf6e62f2S猫头猫        </View>
32*bf6e62f2S猫头猫      </View>
33*bf6e62f2S猫头猫      <IconButton icon="share" color="white" size={rpx(48)}></IconButton>
34*bf6e62f2S猫头猫    </View>
35*bf6e62f2S猫头猫  );
36*bf6e62f2S猫头猫}
37*bf6e62f2S猫头猫
38*bf6e62f2S猫头猫const style = StyleSheet.create({
39*bf6e62f2S猫头猫  wrapper: {
40*bf6e62f2S猫头猫    width: rpx(750),
41*bf6e62f2S猫头猫    height: rpx(150),
42*bf6e62f2S猫头猫    flexDirection: 'row',
43*bf6e62f2S猫头猫    alignItems: 'center',
44*bf6e62f2S猫头猫    justifyContent: 'space-between',
45*bf6e62f2S猫头猫  },
46*bf6e62f2S猫头猫  headerContent: {
47*bf6e62f2S猫头猫    flex: 1,
48*bf6e62f2S猫头猫    height: rpx(150),
49*bf6e62f2S猫头猫    justifyContent: 'center',
50*bf6e62f2S猫头猫    alignItems: 'center',
51*bf6e62f2S猫头猫    maxWidth: rpx(640),
52*bf6e62f2S猫头猫  },
53*bf6e62f2S猫头猫  headerTitleText: {
54*bf6e62f2S猫头猫    color: 'white',
55*bf6e62f2S猫头猫    fontWeight: fontWeightConst.bold,
56*bf6e62f2S猫头猫    fontSize: fontSizeConst.big,
57*bf6e62f2S猫头猫    marginBottom: rpx(12),
58*bf6e62f2S猫头猫    includeFontPadding: false,
59*bf6e62f2S猫头猫  },
60*bf6e62f2S猫头猫  headerDesc: {
61*bf6e62f2S猫头猫    height: rpx(32),
62*bf6e62f2S猫头猫    flexDirection: 'row',
63*bf6e62f2S猫头猫    alignItems: 'center',
64*bf6e62f2S猫头猫  },
65*bf6e62f2S猫头猫  headerArtistText: {
66*bf6e62f2S猫头猫    color: 'white',
67*bf6e62f2S猫头猫    fontSize: fontSizeConst.small,
68*bf6e62f2S猫头猫    includeFontPadding: false,
69*bf6e62f2S猫头猫  },
70*bf6e62f2S猫头猫});
71