| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- import 'package:track_common/widget/prelude.dart';
- class LogoWidget extends StatelessWidget {
- const LogoWidget({super.key});
- @override
- Widget build(BuildContext context) {
- return SizedBox(
- width: double.infinity,
- child: Column(
- mainAxisAlignment: MainAxisAlignment.start,
- crossAxisAlignment: CrossAxisAlignment.center,
- children: [
- const SizedBox(height: 60),
- Image.asset(Assets.imagesIcLoginLogo, package: package, height: 54),
- const SizedBox(
- height: 23,
- )
- ],
- ),
- );
- }
- }
- class TextDecoration extends InputDecoration {
- const TextDecoration({required String hintText})
- : super(
- hintText: hintText,
- border: const OutlineInputBorder(),
- isDense: true,
- );
- }
- class GetCodeButton extends StatelessWidget {
- final Duration codeRetryLeft;
- final VoidCallback onPressed;
- const GetCodeButton(
- {super.key, required this.codeRetryLeft, required this.onPressed});
- @override
- Widget build(BuildContext context) {
- final isEnable = codeRetryLeft.inSeconds <= 0;
- final onPressed = isEnable ? this.onPressed : () {};
- final bkColor =
- isEnable ? const Color(0xff19be30) : const Color(0xffc2c2c2);
- final foregroundColor = isEnable ? Colors.white : Colors.white;
- final text = isEnable ? '获取验证码' : '请稍后(${codeRetryLeft.inSeconds})';
- return ElevatedButton(
- onPressed: onPressed,
- style: ElevatedButton.styleFrom(
- backgroundColor: bkColor,
- shape: RoundedRectangleBorder(
- borderRadius: BorderRadius.circular(2.0)),
- foregroundColor: foregroundColor,
- padding: EdgeInsets.zero),
- child: Text(text));
- }
- }
- class SignInButton extends StatelessWidget {
- final double? height;
- final double? width;
- final VoidCallback? onPressed;
- final Widget? child;
- final Color color1;
- final Color color2;
- const SignInButton({
- super.key,
- required this.onPressed,
- required this.child,
- required this.color1,
- required this.color2,
- this.width,
- this.height,
- });
- @override
- Widget build(BuildContext context) {
- return GestureDetector(
- onTap: onPressed,
- child: Container(
- height: height,
- width: width,
- alignment: Alignment.center,
- decoration: BoxDecoration(
- gradient: LinearGradient(colors: [
- color1,
- color2,
- ]),
- borderRadius: BorderRadius.circular(6.0)),
- child: child,
- ));
- }
- }
|