Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import 'package:credical/utile_size.dart';
- import 'package:flutter/material.dart';
- class NumericPad extends StatelessWidget {
- get context => null;
- // final Function(int) onNumberSelected;
- // const NumericPad({super.key, required this.onNumberSelected});
- @override
- Widget build(BuildContext context) {
- SizeConfig().init(context);
- Size size = MediaQuery.of(context).size;
- return Padding(
- padding: EdgeInsets.symmetric(
- horizontal: getProportionateScreenWidth(55),
- ),
- child: Container(
- color: Colors.transparent,
- child: Column(
- mainAxisAlignment: MainAxisAlignment.spaceEvenly,
- crossAxisAlignment: CrossAxisAlignment.stretch,
- children: [
- Container(
- height: size.height * 0.09,
- width: size.width * 0.06,
- child: Row(
- mainAxisAlignment: MainAxisAlignment.spaceEvenly,
- crossAxisAlignment: CrossAxisAlignment.start,
- children: [
- buildNumber(1),
- buildNumber(2),
- buildNumber(3),
- ],
- ),
- ),
- Container(
- height: size.height * 0.09,
- width: size.width * 0.06,
- child: Row(
- mainAxisAlignment: MainAxisAlignment.spaceEvenly,
- crossAxisAlignment: CrossAxisAlignment.start,
- children: [
- buildNumber(4),
- buildNumber(5),
- buildNumber(6),
- ],
- ),
- ),
- Container(
- height: size.height * 0.09,
- width: size.width * 0.06,
- child: Row(
- mainAxisAlignment: MainAxisAlignment.spaceEvenly,
- crossAxisAlignment: CrossAxisAlignment.start,
- children: [
- buildNumber(7),
- buildNumber(8),
- buildNumber(9),
- ],
- ),
- ),
- Container(
- height: size.height * 0.09,
- width: size.width * 0.06,
- child: Row(
- mainAxisAlignment: MainAxisAlignment.spaceEvenly,
- crossAxisAlignment: CrossAxisAlignment.start,
- children: [
- buildFingerprint(),
- buildNumber(0),
- buildSignout(),
- ],
- ),
- ),
- ],
- ),
- ),
- );
- }
- Widget buildNumber(int number) {
- return Expanded(
- child: GestureDetector(
- onTap: () {
- // onNumberSelected(number);
- },
- child: Padding(
- padding: EdgeInsets.all(
- getProportionateScreenWidth(10),
- ),
- child: Container(
- decoration: BoxDecoration(
- color: Color(0xFF0f7dff),
- borderRadius: BorderRadius.circular(
- getProportionateScreenWidth(20),
- ),
- ),
- child: Center(
- child: Text(
- number.toString(),
- style: TextStyle(
- fontSize: getProportionateScreenWidth(20),
- fontWeight: FontWeight.bold,
- color: Colors.white,
- ),
- ),
- ),
- ),
- ),
- ),
- );
- }
- Widget buildFingerprint() {
- return Expanded(
- child: GestureDetector(
- onTap: () {
- // onNumberSelected(-1);
- },
- child: Padding(
- padding: EdgeInsets.all(
- getProportionateScreenWidth(10),
- ),
- child: Container(
- decoration: BoxDecoration(
- color: Colors.transparent,
- borderRadius: BorderRadius.circular(
- getProportionateScreenWidth(10),
- ),
- ),
- child: GestureDetector(
- onTap: () {
- buildDialogBox();
- },
- child: Center(
- child: Image.asset("assets/Fingerprint.png"),
- ),
- ),
- ),
- ),
- ),
- );
- }
- Future<dynamic> buildDialogBox() {
- return showDialog(
- context: context,
- builder: (context) {
- return AlertDialog(
- title: Text("Dialog"),
- content: Icon(Icons.fingerprint),
- actions: [
- TextButton(
- onPressed: () {},
- child: Text("ok"),
- ),
- ],
- );
- },
- );
- }
- Widget buildSignout() {
- return Expanded(
- child: GestureDetector(
- onTap: () {
- // onNumberSelected(-1);
- },
- child: Padding(
- padding: EdgeInsets.all(
- getProportionateScreenWidth(10),
- ),
- child: Container(
- decoration: BoxDecoration(
- color: Colors.transparent,
- borderRadius: BorderRadius.circular(
- getProportionateScreenWidth(10),
- ),
- ),
- child: Center(
- child: Text(
- "Sign Out",
- style: TextStyle(
- fontSize: getProportionateScreenWidth(14),
- color: Color(0xFF0f7dff),
- fontWeight: FontWeight.bold,
- ),
- ),
- ),
- ),
- ),
- ),
- );
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement