import React from 'react'; import { Image, Pressable, StyleSheet, Text, View } from 'react-native'; import { useTranslation } from 'react-i18next'; import SheetModal from '@/components/ui/SheetModal'; import type { ThemeMode } from '@/src/storage/appStorage'; type Props = { visible: boolean; mode: ThemeMode; onSelect: (mode: ThemeMode) => void; onClose: () => void; }; export default function ThemeModal({ visible, mode, onSelect, onClose }: Props) { const { t } = useTranslation(); return ( onSelect('scenery')} > onSelect('color')} > onSelect('suixin')} > ); } function ThemeCard({ title, selected, onPress, children, }: { title: string; selected: boolean; onPress: () => void; children: React.ReactNode; }) { return ( {children} {/* 文案展示在图片中心 */} {title} ); } const styles = StyleSheet.create({ row: { flexDirection: 'row', flexWrap: 'wrap', gap: 12, paddingHorizontal: 0, paddingBottom: 50, paddingTop: 20, justifyContent: 'center', }, cardContainer: { alignItems: 'center', width: 112, }, previewWrapper: { width: 110, height: 178, borderRadius: 26, padding: 6.5, justifyContent: 'center', alignItems: 'center', }, selectedWrapper: { borderWidth: 4, borderColor: '#E7837A', borderRadius: 26, }, previewInner: { width: '100%', height: '100%', borderRadius: 21, overflow: 'hidden', backgroundColor: '#F5F5F5', position: 'relative', }, previewImage: { width: '100%', height: '100%', }, textOverlay: { ...StyleSheet.absoluteFillObject, justifyContent: 'center', alignItems: 'center', backgroundColor: 'rgba(0,0,0,0.05)', // 轻微遮罩增加文字可读性 }, overlayTitle: { color: '#FFFFFF', fontSize: 15, fontWeight: '700', textAlign: 'center', textShadowColor: 'rgba(0, 0, 0, 0.3)', textShadowOffset: { width: 0, height: 1 }, textShadowRadius: 3, }, selectedOverlayTitle: { color: '#FFFFFF', }, });