app/lib/components/details_screen.dart
2022-05-14 23:44:03 +07:00

118 lines
4 KiB
Dart
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import 'package:flutter/material.dart';
import 'package:flutter_svg/svg.dart';
import '../utils/utils.dart';
import 'package:nekoya_flutter/screens/productcoba.dart';
import 'package:nekoya_flutter/components/color_dot.dart';
class DetailsScreen extends StatelessWidget {
const DetailsScreen({Key? key, required this.product}) : super(key: key);
final Product product;
@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: const Color(0xFFEFEFF2),
appBar: AppBar(
leading: const BackButton(color: Colors.black),
actions: [
IconButton(
onPressed: () {},
icon: CircleAvatar(
backgroundColor: Colors.white,
child: SvgPicture.asset(
"assets/icons/Heart.svg",
height: 20,
),
),
)
],
),
body: Column(
children: [
Image.asset(
product.image,
height: MediaQuery.of(context).size.height * 0.4,
fit: BoxFit.cover,
),
const SizedBox(height: defaultPadding * 1.5),
Expanded(
child: Container(
padding: const EdgeInsets.fromLTRB(defaultPadding,
defaultPadding * 2, defaultPadding, defaultPadding),
decoration: const BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.only(
topLeft: Radius.circular(defaultBorderRadius * 3),
topRight: Radius.circular(defaultBorderRadius * 3),
),
),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Row(
children: [
Expanded(
child: Text(
product.title,
style: Theme.of(context).textTheme.headline6,
),
),
const SizedBox(width: defaultPadding),
Text(
"\$${product.price}",
style: Theme.of(context).textTheme.headline6,
),
],
),
const Padding(
padding: EdgeInsets.symmetric(vertical: defaultPadding),
child: Text(
"A Henley shirt is a collarless pullover shirt, by a round neckline and a placket about 3 to 5 inches (8 to 13 cm) long and usually having 25 buttons.",
),
),
Text(
"Colors",
style: Theme.of(context).textTheme.subtitle2,
),
const SizedBox(height: defaultPadding / 2),
Row(
children: const [
ColorDot(
color: Color(0xFFBEE8EA),
isActive: false,
),
ColorDot(
color: Color(0xFF141B4A),
isActive: true,
),
ColorDot(
color: Color(0xFFF4E5C3),
isActive: false,
),
],
),
const SizedBox(height: defaultPadding * 2),
Center(
child: SizedBox(
width: 200,
height: 48,
child: ElevatedButton(
onPressed: () {},
style: ElevatedButton.styleFrom(
primary: primaryColor,
shape: const StadiumBorder()),
child: const Text("Add to Cart"),
),
),
)
],
),
),
)
],
),
);
}
}