From 355c05cf060eaa6735c0a3d5060f21377d2e0c43 Mon Sep 17 00:00:00 2001 From: Ivan Murashov Date: Mon, 24 Jul 2017 12:44:17 +0300 Subject: [PATCH] =?UTF-8?q?=D0=A1=D0=B4=D0=B5=D0=BB=D0=B0=D0=BB=20=D1=8D?= =?UTF-8?q?=D0=BA=D1=80=D0=B0=D0=BD=D1=8B=20=D0=9F=D1=80=D0=BE=D0=B2=D0=B5?= =?UTF-8?q?=D0=B4=D0=B5=D0=BD=D0=B8=D1=8F=20=D0=BF=D0=BE=D0=BA=D1=83=D0=BF?= =?UTF-8?q?=D0=BA=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/main.dart | 4 +++- lib/purchase.dart | 35 +++++++++++++++-------------------- lib/purchase_success.dart | 8 ++++++-- 3 files changed, 24 insertions(+), 23 deletions(-) diff --git a/lib/main.dart b/lib/main.dart index d50d697..cacab5c 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -31,6 +31,7 @@ const Color textBorderColor = const Color(0xffcfd8dc); const Color textFieldBackground = const Color(0xffefefef); const Color tokenActiveTextColor = const Color(0xff1f5a1f); const Color tokenActivateTextColor = const Color(0xff4e3a19); +const Color greenBackground = const Color(0xff8ae28a); // Margins const double verticalMargin = 28.0; @@ -70,7 +71,8 @@ startScanner(BuildContext context) async { return result; }); - + + Navigator.of(context).pop(); await platform.invokeMethod('startScanner'); } diff --git a/lib/purchase.dart b/lib/purchase.dart index e4bfb4b..ed164de 100644 --- a/lib/purchase.dart +++ b/lib/purchase.dart @@ -32,7 +32,7 @@ class PurchaseScreenState extends BaseState { } @override Widget getScreenContent() { - return new Container(height: 398.0, + return new Container(height: 412.0, child: new ListView(reverse: true, children: [ new Column(children: [ getValueWithTitle('ФИО', 'Знаменитый Рокер Паук'), @@ -40,38 +40,33 @@ class PurchaseScreenState extends BaseState { getValueWithTitle('Вознаграждение', '100%'), getHintLabel(), getDecoratedTextWidget(), - getApprovePurchaseButton(context), - buildScanButton(context)]) + buildButton(new EdgeInsets.only(top: 36.0, left: 70.0, right: 70.0), buildRaisedButton(context, 'ЗАВЕРШИТЬ ПОКУПКУ', () => _purchase(context))), + buildButton(new EdgeInsets.only(top: 24.0, left: 70.0, right: 70.0), buildFlatButton(context, 'СКАНИРОВАТЬ', primaryColor))]) ].reversed.toList())); } Widget getValueWithTitle(String title, String value) { - return new Container(padding: new EdgeInsets.only(left: verticalMargin, right: verticalMargin, top: 12.0), + return new Container(padding: new EdgeInsets.only(left: verticalMargin, right: verticalMargin, top: 18.0), child: new Column(children: [ new Row(crossAxisAlignment: CrossAxisAlignment.start, children: [new Text(title, textAlign: TextAlign.left, style: new TextStyle(color: greyTextColor, fontSize: 14.0))]), new Row(crossAxisAlignment: CrossAxisAlignment.start, children: [new Text(value, textAlign: TextAlign.left, style: new TextStyle(color: Colors.black, fontSize: 20.0))]) ])); } + + Widget buildButton(EdgeInsets margin, Widget widget) { + return new Container(margin: margin, height: 48.0, child: new Row(children: [new Expanded(child: widget)])); + } - Widget getApprovePurchaseButton(BuildContext context) { - return new Container(margin: new EdgeInsets.only(top: 36.0), height: 44.0, - child: new RaisedButton(child: new Text('ЗАВЕРШИТЬ ПОКУПКУ', + Widget buildRaisedButton(BuildContext context, String text, VoidCallback onPressed) { + return new RaisedButton(child: new Text(text, style: new TextStyle(color: Colors.white)), - onPressed: () => _purchase(context), - color: primaryColor)); + onPressed: onPressed, + color: primaryColor); } - Widget buildScanButton(BuildContext context) { - return new Container(margin: new EdgeInsets.only(top: 24.0, left: 70.0, right: 70.0), child: _getScanButtonRow(context)); - } - - Widget _getScanButtonRow(BuildContext context) { - return new Row(children: [new Expanded(child: _getScanButton(context))]); - } - - Widget _getScanButton(BuildContext context) { - return new Container(height: 44.0, child: new FlatButton(child: new Text('СКАНИРОВАТЬ', - style: new TextStyle(color: primaryColor)), + Widget buildFlatButton(BuildContext context, String title, Color textColor) { + return new Container(height: 48.0, child: new FlatButton(child: new Text(title, + style: new TextStyle(color: textColor)), onPressed: () => startScanner(context)), decoration: _getDecoraionForScanButton()); } diff --git a/lib/purchase_success.dart b/lib/purchase_success.dart index 3c81d13..7efc8c4 100644 --- a/lib/purchase_success.dart +++ b/lib/purchase_success.dart @@ -27,12 +27,16 @@ class _PurchaseSuccessScreenState extends PurchaseScreenState { return new Column(children: [ getValueWithTitle('Покупатель', 'Знаменитый Рокер Паук'), _getSuccessMessage(), - getApprovePurchaseButton(context) + new Expanded(child: new Center()), + buildButton(new EdgeInsets.only(bottom: 74.0, left: 70.0, right: 70.0), buildRaisedButton(context, 'СКАНИРОВАТЬ', () => startScanner(context))) ]); } _getSuccessMessage() { - return new Container(height: 64.0, decoration: new BoxDecoration(color: const Color(0x8ae28aff)), child: new Text('Покупка на сумму 1234.00 руб. проведена', style: new TextStyle(color: tokenActiveTextColor))); + return new Row(children: [new Expanded(child: new Container(margin: new EdgeInsets.only(top: 20.0), height: 64.0, + decoration: new BoxDecoration(color: greenBackground), + child: new Center(child: new Text('Покупка на сумму 1234.00 руб. проведена', textAlign: TextAlign.center, + style: new TextStyle(fontWeight: FontWeight.bold, color: tokenActiveTextColor)))))]); } } \ No newline at end of file