Files
ai_chat_assistant/lib/widgets/rotating_image.dart

54 lines
1.2 KiB
Dart

import 'package:flutter/material.dart';
class RotatingImage extends StatefulWidget {
final String imagePath;
final double size;
final Duration duration;
final String? package; // 添加这个参数
const RotatingImage({
Key? key,
required this.imagePath,
this.size = 20,
this.duration = const Duration(seconds: 3),
this.package = 'ai_chat_assistant', // 默认值
}) : 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,
package: widget.package, // 使用传入的package参数
),
);
}
}