thinking image

This commit is contained in:
Chen Li
2025-08-13 09:23:09 +08:00
parent 21ca7f67f2
commit da2a103920
3 changed files with 61 additions and 7 deletions

View File

@@ -0,0 +1,49 @@
import 'package:flutter/material.dart';
class RotatingImage extends StatefulWidget {
final String imagePath;
final double size;
final Duration duration;
const RotatingImage({
Key? key,
required this.imagePath,
this.size = 20,
this.duration = const Duration(seconds: 3)
}) : super(key: key);
@override
State<RotatingImage> createState() => _RotatingImageState();
}
class _RotatingImageState extends State<RotatingImage>
with SingleTickerProviderStateMixin {
late AnimationController _controller;
@override
void initState() {
super.initState();
_controller = AnimationController(
duration: widget.duration,
vsync: this,
)..repeat();
}
@override
void dispose() {
_controller.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
return RotationTransition(
turns: _controller,
child: Image.asset(
widget.imagePath,
width: widget.size,
height: widget.size
),
);
}
}