TIF_E41210280/lib/ui/home/home.dart

123 lines
4.3 KiB
Dart

import 'package:flutter/material.dart';
import 'package:gap/gap.dart';
import 'package:skripsi_getit/themes/colors.dart';
import 'package:skripsi_getit/ui/home/movie/popular_bulk_movie.dart';
import 'package:skripsi_getit/ui/home/movie/popular_movie.dart';
import 'package:skripsi_getit/ui/home/movie/top_rated_movie.dart';
import 'package:skripsi_getit/ui/home/movie/upcoming_movie.dart';
import 'package:skripsi_getit/ui/home/test_view.dart';
import 'package:skripsi_getit/ui/home/widgets/widget_top_home.dart';
import '../../themes/fonts.dart';
class Home extends StatefulWidget {
const Home({super.key});
@override
State<Home> createState() => _HomeState();
}
class _HomeState extends State<Home> {
@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: primaryColor,
body: SafeArea(
child: SingleChildScrollView(
padding: const EdgeInsets.all(20),
physics: const BouncingScrollPhysics(),
child: Column(
children: [
const WidgetTopHome(),
Gap(15),
SingleChildScrollView(
scrollDirection: Axis.horizontal,
child: Row(
children: [
ElevatedButton.icon(
icon: Icon(Icons.search, color: whiteColor),
style: ElevatedButton.styleFrom(
backgroundColor: darkColor,
shadowColor: Colors.transparent,
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(10),
),
),
onPressed: () {
Navigator.pushNamed(context, '/search');
},
label: Text(
"Search",
style: AppFonts.poppins(
fontSize: 12,
color: whiteColor,
),
),
),
Gap(20),
ElevatedButton.icon(
icon: Icon(Icons.loop, color: whiteColor),
style: ElevatedButton.styleFrom(
backgroundColor: darkColor,
shadowColor: Colors.transparent,
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(10),
),
),
onPressed: () {
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => const TestView(),
),
);
},
label: Text(
"Loop Movie",
style: AppFonts.poppins(
fontSize: 12,
color: whiteColor,
),
),
),
Gap(20),
ElevatedButton.icon(
icon: Icon(Icons.download, color: whiteColor),
style: ElevatedButton.styleFrom(
backgroundColor: darkColor,
shadowColor: Colors.transparent,
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(10),
),
),
onPressed: () {
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => const PopularBulkViewBloc(),
),
);
},
label: Text(
"Load Movie",
style: AppFonts.poppins(
fontSize: 12,
color: whiteColor,
),
),
),
],
),
),
TopRatedMovie(),
PopularMovie(),
UpcomingMovie(),
],
),
),
),
);
}
}