123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- import 'package:flutter/material.dart';
- import '../tool/YSTools.dart';
- class YSBase extends StatefulWidget {
- final Color ysColor;
- final bool isTab;
- final String ysTitle;
- final Widget? ysRightWidget;
- final Widget? ysChild;
- const YSBase({Key? key, this.ysColor = const Color(0xFF23262B), this.isTab = false, this.ysTitle = '', this.ysRightWidget, this.ysChild}) : super(key: key);
- @override
- YSBaseState createState() => YSBaseState();
- }
- class YSBaseState extends State<YSBase> {
- @override
- Widget build(BuildContext context) {
- return Scaffold(
- backgroundColor: widget.ysColor,
- body: GestureDetector(
- onTap: (){
- FocusScope.of(context).unfocus();
- },
- child: SizedBox(
- width: ysWidth(context),
- height: ysHeight(context),
- child: SingleChildScrollView(
- child: Column(
- children: [
- Container(
- height: ysTOP(context)+44,
- padding: EdgeInsets.only(left: hsp(20),right: hsp(20),top: ysTOP(context)),
- decoration: BoxDecoration(
- color: widget.ysColor,
- ),
- child: LayoutBuilder(
- builder: (context,conSize){
- return Row(
- children: [
- Container(
- width: hsp(50),
- alignment: Alignment.centerLeft,
- child: widget.isTab==true?SizedBox(width: hsp(30),):GestureDetector(
- onTap: (){
- Navigator.pop(context);
- },
- child: Container(
- height: hsp(30),
- width: hsp(30),
- alignment: Alignment.center,
- decoration: BoxDecoration(
- color: const Color(0xFF23262B),
- borderRadius: const BorderRadius.all(Radius.circular(50)),
- border: Border.all(color: const Color(0xFF23262B),width: hsp(1)),
- boxShadow: const [
- BoxShadow(color: Color(0xFF3E434E),blurRadius: 5)
- ]
- ),
- child: Image.asset('images/tzh_back.png',height: hsp(20),width: hsp(20),),
- )
- ),
- ),
- Container(
- width: conSize.maxWidth-hsp(100),
- padding: EdgeInsets.only(left: hsp(20),right: hsp(20)),
- alignment: Alignment.center,
- child: Text(widget.ysTitle,style: TextStyle(fontSize: zsp(17),color: Colors.white),),
- ),
- Container(
- width: hsp(50),
- alignment: Alignment.centerRight,
- child: widget.ysRightWidget??Container(),
- )
- ],
- );
- },
- ),
- ),
- SizedBox(
- height: ysHeight(context)-ysTOP(context)-(widget.isTab?158:44),
- width: ysWidth(context),
- child: widget.ysChild,
- )
- ],
- ),
- ),
- ),
- ),
- );
- }
- }
|