radio buttons in flutter code example

Example 1: flutter radio button with text

import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Nicesnippets',
      theme: ThemeData(
        primarySwatch: Colors.red,
        visualDensity: VisualDensity.adaptivePlatformDensity,
      ),
      home: MyHomePage(title: 'Welcome to Nicesnippets'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  @override
  MyHomePage({Key key, this.title}) : super(key: key);
  final String title;
  State createState() => State();
}



class _State extends State   {
  TextEditingController nameController = TextEditingController();
  int _radioValue = 0;

  void _handleRadioValueChange(int value) {
    setState(() {
      _radioValue = value;

      switch (_radioValue) {
        case 0:
          break;
        case 1:
          break;
        case 2:
          break;
      }
    });
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
        appBar: AppBar (
          title: Text('Welcome to Nicesnippets'),
        ),
        body: Padding(

            padding: EdgeInsets.all(10),

            child: ListView(
              children: [
                Container(
                    alignment: Alignment.center,
                    padding:EdgeInsets.all(10), 
                    margin: const EdgeInsets.only(top: 50),
                    child: Text(
                      'Radio Button',
                      style: TextStyle(
                          color: Colors.red,
                          fontWeight: FontWeight.w500,
                          fontSize: 30),
                    )),
                new Row(
                  mainAxisAlignment: MainAxisAlignment.center,
: MainAxisAlignment.center,
                  children: [
                    new Radio ( 
                      value: 0,
                      groupValue: _radioValue,
: _radioValue ,
                      onChanged: _handleRadioValueChange ,
                    ),
                    new Text(
                      'First',
                      style: new TextStyle(fontSize: 16.0),
                    ),
),
                    new Radio(
new Radio ( 
                      value: 1,
                      groupValue: _radioValue,
: _radioValue ,
                      onChanged: _handleRadioValueChange,
: _handleRadioValueChange ,
                    ),
),
                    new Text(
new Text(
                      'Second',
                      style: new TextStyle(
                        fontSize: 16.0,
                      ),
                    ),
),
                    new Radio(
new Radio ( 
                      value: 2,
                      groupValue: _radioValue,
: _radioValue ,
                      onChanged: _handleRadioValueChange,
: _handleRadioValueChange ,
                    ),
),
                    new Text(
newText( 
                      'Last',
                      style: new TextStyle(fontSize: 16.0),
:newTextStyle(fontSize:16.0),   
                    ),
),
                  ],
                ),
                Container(
                    height: 50,
                    padding: EdgeInsets.fromLTRB(10, 0, 10, 0),
                    child: RaisedButton(
                      textColor: Colors.white,
                      color: Colors.red,
                      child: Text('Button'),
                      onPressed: () {
                        print(nameController.text);
                      },
                    )),
              ],
            )));
  }


}

Example 2: FormBuilderRadioGroup sample code for radio button flutter

import 'package:flutter/material.dart';
 
void main() => runApp(MyApp());
 
class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
        title: Text("Flutter Radio Button Group Example"),
        ),
        body: SafeArea(
          child : Center(
 
          child:RadioGroup(),
 
          )
        )
      ),
    );
  }
}
 
class RadioGroup extends StatefulWidget {
  @override
  RadioGroupWidget createState() => RadioGroupWidget();
}
 
class FruitsList {
  String name;
  int index;
  FruitsList({this.name, this.index});
}
 
class RadioGroupWidget extends State {
 
  // Default Radio Button Item
  String radioItem = 'Mango';
 
  // Group Value for Radio Button.
  int id = 1;
 
  List<FruitsList> fList = [
    FruitsList(
      index: 1,
      name: "Mango",
    ),
    FruitsList(
      index: 2,
      name: "Apple",
    ),
    FruitsList(
      index: 3,
      name: "Banana",
    ),
    FruitsList(
      index: 4,
      name: "Cherry",
    ),
  ];
 
  Widget build(BuildContext context) {
    return Column(
        children: <Widget>[
           Padding(
            padding : EdgeInsets.all(14.0),
            child: Text('$radioItem', style: TextStyle(fontSize: 23))
              ),
 
           Expanded(
            child: Container(
            height: 350.0,
            child: Column(
              children: 
                fList.map((data) => RadioListTile(
                  title: Text("${data.name}"),
                  groupValue: id,
                  value: data.index,
                  onChanged: (val) {
                    setState(() {
                      radioItem = data.name ;
                      id = data.index;
                    });
                  },
                )).toList(),
            ),
          )),
          
        ],
    );
  }
}

Example 3: flutter radio button

@overrideWidget build(BuildContext context) {  return new MaterialApp(      home: new Scaffold(          appBar: AppBar(            title: new Text('Kids Quiz App'),            centerTitle: true,            backgroundColor: Colors.blue,          ),          body: new Container(              padding: EdgeInsets.all(8.0),              child: new Column(                  mainAxisAlignment: MainAxisAlignment.center,                  children: <Widget>[                    new Text(                      'Select correct answers from below:',                      style: new TextStyle(                          fontSize: 20.0, fontWeight: FontWeight.bold),                    ),                    new Padding(                      padding: new EdgeInsets.all(8.0),                    ),                    new Divider(height: 5.0, color: Colors.black),                    new Padding(                      padding: new EdgeInsets.all(8.0),                    ),                    new Text(                      'Lion is :',                      style: new TextStyle(                        fontWeight: FontWeight.bold,                        fontSize: 18.0,                      ),                    ),                    new Row(                      mainAxisAlignment: MainAxisAlignment.center,                      children: <Widget>[                        new Radio(                          value: 0,                          groupValue: _radioValue1,                          onChanged: _handleRadioValueChange1,                        ),                        new Text(                          'Carnivore',                          style: new TextStyle(fontSize: 16.0),                        ),                        new Radio(                          value: 1,                          groupValue: _radioValue1,                          onChanged: _handleRadioValueChange1,                        ),                        new Text(                          'Herbivore',                          style: new TextStyle(                            fontSize: 16.0,                          ),                        ),                        new Radio(                          value: 2,                          groupValue: _radioValue1,                          onChanged: _handleRadioValueChange1,                        ),                        new Text(                          'Omnivore',                          style: new TextStyle(fontSize: 16.0),                        ),                      ],                    ),