First Project

First Project#

comming soon…

Let’s First import packages:

import 'package:flutter/material.dart';
import 'package:flutter_rating_bar/flutter_rating_bar.dart';
class _RatingExampleState extends State<RatingExample> {
  double rating = 3.0;

  // Rating Method to set rating
  Widget buildRatingBar() {
    return RatingBar.builder(
      initialRating: rating,
      minRating: 1,
      direction: Axis.horizontal,
      allowHalfRating: true,
      itemCount: 5,
      itemSize: 40,
      itemPadding: const EdgeInsets.symmetric(horizontal: 4.0),
      itemBuilder: (context, _) {return const Icon(Icons.star, color: Colors.amber);},
      onRatingUpdate: (value) {
        setState(() {
          rating = value;
        });
        print("Rating: $value");
      },
    );
  }

  // To show rating from given rate
  Widget buildStaticStars(double value) {
    return RatingBarIndicator(
      rating: value,
      itemSize: 30,
      itemCount: 5,
      itemBuilder: (context, _) =>
          const Icon(Icons.star, color: Colors.blue),
    );
  }
  @override
    Widget build(BuildContext context) {
      return Scaffold(
        appBar: AppBar(title: const Text('Rating Bar Example')),
        body: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: [
            buildRatingBar(),            // interactive stars
            const SizedBox(height: 20),
            buildStaticStars(rating),    // shows the chosen value as stars
          ],
        )
      );
  }
}
class RatingExample extends StatefulWidget {
  const RatingExample({super.key});

  @override
  State<RatingExample> createState() { return _RatingExampleState();}
}
class MyApp extends StatelessWidget{
  const MyApp({super.key});

  @override
  Widget build(BuildContext context){
    return const MaterialApp(
      debugShowCheckedModeBanner: true,
      home: RatingExample(),
    );
  }
}
void main(){
  runApp(const MyApp());
}