0

for the project I need to code an application that does some certain things, I have taught myself how to use flutter and coded a big portion of the application already. However, I need some assistance in fixing some issues with the code. It's written in .dart Anyway here is my code: `import 'package:flutter/material.dart';

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

class MyApp extends StatefulWidget { @override _MyAppState createState() => _MyAppState(); }

class _MyAppState extends State { int _currentIndex = 0;

@override Widget build(BuildContext context) { var map = new Card( child: new Column( children: [ new ListTile( leading: new Icon( Icons.place, color: Colors.redAccent, size: 56.0, ), title: new Text( "Map", style: TextStyle(fontWeight: FontWeight.bold), ), subtitle: new Text("Choose your base location!"), enabled: true, onLongPress: () => print("longpress")) ], ), ); final mapbox = new Container( margin: new EdgeInsets.only(left: 10, right: 10, top: 10), child: new SizedBox( height: 80.0, child: map, ), ); var players = new Card( child: new Column( children: [ new ListTile( leading: new Icon( Icons.supervised_user_circle, color: Colors.redAccent, size: 56.0, ), title: new Text( "Players", style: TextStyle(fontWeight: FontWeight.bold), ), subtitle: new Text("Loby of the connected players"), enabled: true, onLongPress: () => print("longpress")) ], ), ); final playerbox = new Container( margin: new EdgeInsets.only(left: 10, right: 10, top: 10), child: SizedBox( height: 80.0, child: players, ), ); var rounds = new Card( child: new Column( children: [ new ListTile( leading: new Icon( Icons.cached, color: Colors.redAccent, size: 56.0, ), title: new Text( "Rounds", style: TextStyle(fontWeight: FontWeight.bold), ), subtitle: new Text( "Determine the number of rounds that the game will have"), enabled: true, onLongPress: () => print("longpress")) ], ), ); final roundsbox = new Container( margin: new EdgeInsets.only(left: 10, right: 10, top: 10), child: SizedBox( height: 80.0, child: rounds, ), ); var time = new Card( child: new Column( children: [ new ListTile( leading: new Icon( Icons.timer, color: Colors.redAccent, size: 56.0, ), title: new Text( "Duration", style: TextStyle(fontWeight: FontWeight.bold), ), subtitle: new Text("Determine the duration of each round"), enabled: true, onLongPress: () => print("longpress")) ], ), ); final timebox = new Container( margin: new EdgeInsets.only(left: 10, right: 10, top: 10), child: SizedBox( height: 80.0, child: time, ), );

final startbutton =FlatButton( onPressed: () {}, child: Text ("Start the game"), color: Colors.redAccent, );

final home = new ListView(
  children: <Widget>[
    mapbox,
    playerbox,
    roundsbox,
    timebox,
  ],
);

final _pageoptions = [home, Text("connections"), Text("Settings")];

return MaterialApp(
  home: Scaffold(
    appBar: AppBar(
      title: Text("hide & seek"),
      centerTitle: true,
      backgroundColor: Colors.redAccent,
    ),
    bottomNavigationBar: BottomNavigationBar(
      currentIndex: _currentIndex,
      backgroundColor: Colors.redAccent,
      items: [
        BottomNavigationBarItem(
            icon: Icon(
              Icons.home,
              color: Colors.white,
              size: 30.0,
            ),
            title: Text(
              'Home',
              style: TextStyle(color: Colors.white, fontWeight: FontWeight.bold),
            ),
            backgroundColor: Colors.redAccent),
        BottomNavigationBarItem(
            icon: Icon(
              Icons.bluetooth,
              color: Colors.white,
              size: 30.0,
            ),
            title: Text(
              'Bluetooth',
              style: 
              TextStyle(color: Colors.white, fontWeight: FontWeight.bold),
            ),
            backgroundColor: Colors.redAccent),
        BottomNavigationBarItem(
            icon: Icon(
              Icons.settings,
              color: Colors.white,
              size: 30.0,
            ),
            title: Text(
              'Settings',
              style: TextStyle(color: Colors.white, fontWeight: FontWeight.bold),
            ),
            backgroundColor: Colors.redAccent),
      ],
      onTap: (index) {
        setState(() {
          _currentIndex = index;
        });
      },
    ),
    body: _pageoptions[_currentIndex],
    drawer: Drawer(
      child: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            const Text(
              "this app was made by sekerlicay.",
              style: TextStyle(fontWeight: FontWeight.bold),
            ),
          ],
        ),
      ),
    ),
    drawerEnableOpenDragGesture: true,
  ),
);

} } ` What I now want to do is to add everything that is inside ListView into a Container so that I can display enter image description here these tabs along with some buttons that I will add underneath. If I don't use Containers the buttons just become long (just like the tabs) which is not exctly what I want. In the end I want the home page to have two containers, one with the tabs and one with the buttons.

Thanks in advance, Berk

Share a link to this question (includes your user id)
| edit | close | undelete |

Browse other questions tagged or ask your own question.