From f09afcb1a135426ffff46e075b6c198836d1d45d Mon Sep 17 00:00:00 2001 From: DMK Date: Fri, 15 Jan 2021 17:45:34 +0300 Subject: [PATCH] Fix --- lib/main.dart | 67 +++++++++++++++++++++++++++++++++------------------ 1 file changed, 44 insertions(+), 23 deletions(-) diff --git a/lib/main.dart b/lib/main.dart index c443d0a..3a5e00c 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,4 +1,5 @@ import 'dart:async'; +import 'dart:math'; import 'package:flutter/material.dart'; import 'package:flutter/scheduler.dart'; import 'package:moving_hole/animprovider.dart'; @@ -29,6 +30,9 @@ class MyWidget extends StatefulWidget { } class _MyWidgetState extends State { + final double _initWidth = 314; + final double _initHeight = 500; + @override void initState() { SchedulerBinding.instance.addPostFrameCallback((timeStamp) async { @@ -42,28 +46,45 @@ class _MyWidgetState extends State { @override Widget build(BuildContext context) { return Scaffold( - body: Stack(fit: StackFit.expand, children: [ - Consumer( - builder: (context, ap, child) => Container( - height: 360, - width: 480, - child: Image.asset(ap.foneScreen ?? 'assets/scrns/scrn1.jpg' + body: LayoutBuilder(builder: (context, constrains) { + var _scale = min(constrains.maxHeight / _initHeight, constrains.maxWidth / _initWidth); + return Transform.scale( + scale: _scale, + child: Center( + child: Container( + color: Colors.red, + height: _initHeight, + width: _initWidth, + child: Stack( + //fit: StackFit.expand, + children: [ + Consumer( + builder: (context, ap, child) => Container( + child: Image.asset( + ap.foneScreen ?? 'assets/scrns/scrn1.jpg', + // height: 360, + // width: 480, - // fit: BoxFit.contain, - ))), - _getOverlay(), - imageOverlay(), - textOverlay(), - // Positioned( - // child: Consumer( - // builder: (context, ap, child) => - // RaisedButton(onPressed: () { - // ap.width = 300; - // ap.height = 150; - // ap.alignX = 0; - // ap.alignY = -0.5; - // }))) - ]), + fit: BoxFit.contain, + ))), + _getOverlay(), + imageOverlay(), + textOverlay(), + // Positioned( + // child: Consumer( + // builder: (context, ap, child) => + // RaisedButton(onPressed: () { + // ap.width = 300; + // ap.height = 150; + // ap.alignX = 0; + // ap.alignY = -0.5; + // }))) + ]), + ), + ), + ); + }), + // ), ); } @@ -125,8 +146,8 @@ class _MyWidgetState extends State { return Consumer( builder: (context, ap, child) => Container( child: ap.picAsset.isNotEmpty ? Image.asset(ap.picAsset) : Container(), - width: 400, - height: 400, + width: 300, + height: 300, alignment: Alignment.center, )); }