main.dart
unknown
dart
a year ago
2.1 kB
7
Indexable
import 'package:flutter/material.dart';
import 'package:flutter_application_1/alignpage.dart';
import 'package:flutter_application_1/iconpage.dart';
import 'package:flutter_application_1/page/containerpage.dart';
import 'package:flutter_application_1/page/elevetedbuttonpage.dart';
import 'package:flutter_application_1/page/rowpage.dart';
import 'package:flutter_application_1/page/textpage.dart';
import 'package:flutter_application_1/sizeboxpage.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Widget Demo',
theme: ThemeData(primarySwatch: Colors.purple),
home: const TugasPage(),
);
}
}
class TugasPage extends StatelessWidget {
const TugasPage({super.key});
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: const Text('Widget Demo'),
),
body: GridView.count(
crossAxisCount: 2,
children: [
_buildNavButton(context, 'Tugas', const TugasPage()),
_buildNavButton(context, 'Align', const AlignPage()),
_buildNavButton(context, 'Sizebox', const SizedBoxPage()),
_buildNavButton(context, 'Container', const Containerpage()),
_buildNavButton(context, 'Row', const Rowpage()),
_buildNavButton(context, 'Text', const Textpage()),
_buildNavButton(
context, 'ElevatedButton', const ElevatedButtonPage()),
_buildNavButton(context, 'Icon', const IconPage()),
],
),
);
}
Widget _buildNavButton(BuildContext context, String title, Widget page) {
return GestureDetector(
onTap: () => Navigator.push(
context,
MaterialPageRoute(builder: (context) => page),
),
child: Card(
margin: const EdgeInsets.all(8),
child: Center(child: Text(title)),
),
);
}
}
Editor is loading...
Leave a Comment