在Flutter中导入额定杆

cwxwcias  于 2023-03-09  发布在  Flutter
关注(0)|答案(2)|浏览(89)

在我的页面中,我希望在底部有一个评论部分,用户可以在那里提交评论。他们会把他们的名字,电子邮件,评论,并评级为5星的项目(他们的电子邮件将不会显示在页面上)。旁边的评论标题,我希望它显示的平均星级从客户评论的平均星级数。
我不知道如何实现这个功能,让他们写他们的评论,让它显示出来,然后采取平均星星。我目前正在尝试的需要我导入评级栏,但我得到这个错误。

Target of URI doesn't exist: 'package:flutter_rating_bar/flutter_rating_bar.dart'

这是我目前拥有的详细信息页面的代码(对于每一个项目,它都有它的标题(它将它分类为一个组,如饮料)、它的名称和它的描述):

class DetailsPage extends StatefulWidget {
  final String imageUrl;
  final String title;
  final String name;
  final String description;

  DetailsPage({
    required this.imageUrl,
    required this.title,
    required this.name,
    required this.description,
  });

  @override
  _DetailsPageState createState() => _DetailsPageState();
}

class _DetailsPageState extends State<DetailsPage> {
  double rating = 0;

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: SingleChildScrollView(
        child: SafeArea(
          child: Column(
            mainAxisSize: MainAxisSize.min,
            crossAxisAlignment: CrossAxisAlignment.start,
            children: [
              Flexible(
                fit: FlexFit.loose,
                child: Container(
                  height: 300.0, // set a fixed height
                  margin: EdgeInsets.all(16.0),
                  decoration: BoxDecoration(
                    borderRadius: BorderRadius.circular(16.0),
                    image: DecorationImage(
                      image: AssetImage(widget.imageUrl),
                      fit: BoxFit.cover,
                    ),
                  ),
                ),
              ),
              Padding(
                padding: const EdgeInsets.all(16.0),
                child: Column(
                  crossAxisAlignment: CrossAxisAlignment.start,
                  children: [
                    Text(
                      widget.name,
                      style: TextStyle(
                        fontSize: 24.0,
                        fontWeight: FontWeight.bold,
                      ),
                    ),
                    SizedBox(height: 8.0),
                    Text(
                      widget.description,
                      style: TextStyle(fontSize: 16.0),
                    ),
                    SizedBox(height: 16.0),
                    Text(
                      'Rate this item',
                      style: TextStyle(
                        fontSize: 18.0,
                        fontWeight: FontWeight.bold,
                      ),
                    ),
                    SizedBox(height: 8.0),
                    RatingBar.builder(
                      initialRating: rating,
                      minRating: 1,
                      direction: Axis.horizontal,
                      allowHalfRating: true,
                      itemCount: 5,
                      itemSize: 40.0,
                      itemPadding: EdgeInsets.symmetric(horizontal: 4.0),
                      itemBuilder: (context, _) => Icon(
                        Icons.star,
                        color: Colors.amber,
                      ),
                      onRatingUpdate: (ratingValue) {
                        setState(() {
                          rating = ratingValue;
                        });
                      },
                    ),
                  ],
                ),
              ),
            ],
          ),
        ),
      ),
    );
  }
}
2sbarzqh

2sbarzqh1#

要修复错误Target of URI doesn't exist:当flutter找不到包路径时会发生这种情况,您可能忘记使用命令flutter pub get下载包,请按照以下步骤操作:
1.Flutter清理

  1. Flutter 酒吧
  2. flutter pub upgrade(可选-如果您想升级软件包,请使用)
    1.重新启动Android Studio或Visual Studio(您使用的IDE或文本编辑器)
    如果是工作别忘了投票。🙏️.
js81xvg6

js81xvg62#

在您的终端中运行flutter pub add flutter_rating_bar,然后重新启动您的应用,您就完成了。

相关问题