Rain/lib/app/widgets/desc/desc.dart

61 lines
1.5 KiB
Dart
Raw Normal View History

2023-06-17 20:57:57 +03:00
import 'package:flutter/material.dart';
import 'package:get/get.dart';
2023-07-18 21:57:37 +03:00
class DescWeather extends StatefulWidget {
2023-06-17 20:57:57 +03:00
const DescWeather({
super.key,
required this.imageName,
required this.value,
required this.desc,
this.message = '',
});
final String imageName;
final String value;
final String desc;
final String? message;
2023-07-18 21:57:37 +03:00
@override
State<DescWeather> createState() => _DescWeatherState();
}
class _DescWeatherState extends State<DescWeather> {
bool hide = true;
2023-10-30 23:04:14 +05:30
2023-06-17 20:57:57 +03:00
@override
Widget build(BuildContext context) {
2023-10-30 23:04:14 +05:30
final textTheme = context.textTheme;
2023-07-18 21:57:37 +03:00
return GestureDetector(
onTap: () => setState(() => hide = !hide),
child: Tooltip(
message: widget.message,
child: SizedBox(
height: 85,
width: 100,
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Image.asset(
widget.imageName,
scale: 20,
),
const SizedBox(height: 5),
Text(
widget.value,
2023-10-30 23:04:14 +05:30
style: textTheme.labelLarge,
2023-07-18 21:57:37 +03:00
),
Expanded(
child: Text(
widget.desc,
2023-10-30 23:04:14 +05:30
style: textTheme.bodySmall,
2023-07-18 21:57:37 +03:00
overflow: hide ? TextOverflow.ellipsis : TextOverflow.visible,
textAlign: TextAlign.center,
),
2023-06-17 20:57:57 +03:00
),
2023-07-18 21:57:37 +03:00
],
),
2023-06-17 20:57:57 +03:00
),
),
);
}
}