Flutter评分插件smooth_star_rating_null_safety的使用
Flutter评分插件smooth_star_rating_null_safety的使用
在您的Flutter项目中添加依赖:
dependencies:
...
smooth_star_rating: 1.0.4+2
使用示例
首先,导入smooth_star_rating
包:
import 'package:smooth_star_rating/smooth_star_rating.dart';
然后,在您的应用中使用SmoothStarRating
组件:
SmoothStarRating(
allowHalfRating: false, // 是否允许半星评级
onRatingChanged: (v) { // 评分改变时的回调函数
rating = v;
setState(() {}); // 更新UI
},
starCount: 5, // 星星的数量
rating: rating, // 当前评分值
size: 40.0, // 星星的大小
filledIconData: Icons.blur_off, // 已填满星星的图标
halfFilledIconData: Icons.blur_on, // 半填满星星的图标
color: Colors.green, // 星星的颜色
borderColor: Colors.green, // 星星边框颜色
spacing: 0.0, // 星星之间的间距
)
构造函数参数
allowHalfRating - 是否允许半星评级(1.0 或 0.5)
onRatingChanged(int rating) - 评分改变时的回调函数
starCount - 最大星星数量
rating - 当前的评分值
size - 单个星星的大小
color - 星星的填充颜色
borderColor - 星星的边框颜色
spacing - 星星之间的间距(默认为0.0)
filledIconData - 已填满星星的图标
halfFilledIconData - 半填满星星的图标
defaultIconData - 默认星星的图标
截图
完整评分
半星评分
MIT LICENSE
如果您发现任何问题或建议,请告诉我。感谢!
完整示例代码
import 'package:flutter/material.dart';
import 'package:smooth_star_rating/smooth_star_rating.dart';
void main() => runApp(MyApp());
class MyApp extends StatefulWidget {
[@override](/user/override)
_MyAppState createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
var rating = 0.0;
[@override](/user/override)
Widget build(BuildContext context) {
return MaterialApp(
title: '评分栏演示',
theme: ThemeData(
primarySwatch: Colors.green,
),
debugShowCheckedModeBanner: false,
home: Scaffold(
body: Center(
child: SmoothStarRating(
rating: rating,
size: 65,
filledIconData: Icons.star,
halfFilledIconData: Icons.star_half,
defaultIconData: Icons.star_border,
starCount: 5,
allowHalfRating: false,
spacing: 2.0,
onRatingChanged: (value) {
setState(() {
rating = value;
});
},
)),
),
);
}
}
更多关于Flutter评分插件smooth_star_rating_null_safety的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html
1 回复
更多关于Flutter评分插件smooth_star_rating_null_safety的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html
SmoothStarRating
是一个用于在 Flutter 应用中显示和选择评分的插件。它支持空安全(null safety)版本,并且易于集成到你的应用中。以下是使用 smooth_star_rating_null_safety
插件的步骤和示例代码。
1. 添加依赖
首先,在你的 pubspec.yaml
文件中添加 smooth_star_rating_null_safety
插件的依赖:
dependencies:
flutter:
sdk: flutter
smooth_star_rating_null_safety: ^1.0.4
然后运行 flutter pub get
来获取依赖。
2. 导入包
在你的 Dart 文件中导入 smooth_star_rating_null_safety
包:
import 'package:smooth_star_rating_null_safety/smooth_star_rating_null_safety.dart';
3. 使用 SmoothStarRating
组件
SmoothStarRating
组件提供了多种自定义选项,以下是一个简单的示例:
import 'package:flutter/material.dart';
import 'package:smooth_star_rating_null_safety/smooth_star_rating_null_safety.dart';
class RatingExample extends StatefulWidget {
[@override](/user/override)
_RatingExampleState createState() => _RatingExampleState();
}
class _RatingExampleState extends State<RatingExample> {
double rating = 0;
[@override](/user/override)
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Smooth Star Rating Example'),
),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
SmoothStarRating(
rating: rating,
size: 50,
filledIconData: Icons.star,
halfFilledIconData: Icons.star_half,
defaultIconData: Icons.star_border,
starCount: 5,
allowHalfRating: true,
spacing: 2.0,
onRated: (value) {
setState(() {
rating = value;
});
print("Rating Value -> $value");
},
),
SizedBox(height: 20),
Text(
'Rating: $rating',
style: TextStyle(fontSize: 24),
),
],
),
),
);
}
}
void main() {
runApp(MaterialApp(
home: RatingExample(),
));
}