11import 'dart:math' ;
22
3- import 'package:flutter/material.dart' ;
4- import 'package:material_symbols_icons/symbols.dart' ;
5-
63import 'package:dpip/api/model/weather_schema.dart' ;
74import 'package:dpip/core/i18n.dart' ;
85import 'package:dpip/utils/extensions/build_context.dart' ;
6+ import 'package:flutter/material.dart' ;
7+ import 'package:material_symbols_icons/symbols.dart' ;
98
109class HeroWeather extends StatelessWidget {
1110 final RealtimeWeather ? weather;
@@ -101,6 +100,13 @@ class HeroWeather extends StatelessWidget {
101100 color: Colors .white,
102101 height: 1 ,
103102 letterSpacing: - 2 ,
103+ shadows: [
104+ Shadow (
105+ color: Colors .black.withValues (alpha: 0.4 ),
106+ blurRadius: 8 ,
107+ offset: const Offset (0 , 2 ),
108+ ),
109+ ],
104110 ),
105111 ),
106112 const SizedBox (height: 8 ),
@@ -111,13 +117,27 @@ class HeroWeather extends StatelessWidget {
111117 _getWeatherIcon (data.weatherCode),
112118 size: 24 ,
113119 color: Colors .white.withValues (alpha: 0.9 ),
120+ shadows: [
121+ Shadow (
122+ color: Colors .black.withValues (alpha: 0.3 ),
123+ blurRadius: 4 ,
124+ offset: const Offset (0 , 1 ),
125+ ),
126+ ],
114127 ),
115128 const SizedBox (width: 8 ),
116129 Text (
117130 data.weather,
118131 style: context.texts.titleMedium? .copyWith (
119132 color: Colors .white.withValues (alpha: 0.9 ),
120133 fontWeight: FontWeight .w400,
134+ shadows: [
135+ Shadow (
136+ color: Colors .black.withValues (alpha: 0.3 ),
137+ blurRadius: 4 ,
138+ offset: const Offset (0 , 1 ),
139+ ),
140+ ],
121141 ),
122142 ),
123143 ],
@@ -127,6 +147,13 @@ class HeroWeather extends StatelessWidget {
127147 '體感 ${feelsLike .round ()}°' .i18n,
128148 style: context.texts.bodyMedium? .copyWith (
129149 color: Colors .white.withValues (alpha: 0.7 ),
150+ shadows: [
151+ Shadow (
152+ color: Colors .black.withValues (alpha: 0.3 ),
153+ blurRadius: 4 ,
154+ offset: const Offset (0 , 1 ),
155+ ),
156+ ],
130157 ),
131158 ),
132159 ],
0 commit comments