Экраны настроек
This commit is contained in:
27
lib/screens/currencies.dart
Normal file
27
lib/screens/currencies.dart
Normal file
@@ -0,0 +1,27 @@
|
||||
import 'package:checker/base/settings_base_state.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:checker/consts.dart';
|
||||
import 'package:checker/strings.dart';
|
||||
import 'package:checker/base/base_state.dart';
|
||||
|
||||
class CurrenciesScreen extends StatefulWidget {
|
||||
@override State createState() => new _CurrenciesState();
|
||||
}
|
||||
|
||||
class _CurrenciesState extends SettingsBaseState<CurrenciesScreen> {
|
||||
|
||||
@override
|
||||
List<String> getOptions() {
|
||||
|
||||
String ruble = StringsLocalization.ruble();
|
||||
String dollar = StringsLocalization.dollar();
|
||||
String hryvna = StringsLocalization.hryvna();
|
||||
|
||||
return [ruble, dollar, hryvna];
|
||||
}
|
||||
|
||||
@override
|
||||
String getTitle() {
|
||||
return StringsLocalization.settings();
|
||||
}
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
import 'package:checker/base_state.dart';
|
||||
import 'package:checker/base/base_state.dart';
|
||||
import 'package:checker/consts.dart';
|
||||
import 'package:checker/common.dart';
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ import 'dart:convert'; // Пакет для обработки json с отве
|
||||
import 'package:checker/common.dart';
|
||||
import 'package:checker/consts.dart';
|
||||
import 'package:checker/network.dart';
|
||||
import 'package:checker/base_state.dart';
|
||||
import 'package:checker/base/base_state.dart';
|
||||
import 'package:checker/strings.dart';
|
||||
|
||||
class FinishRegistrationScreen extends StatefulWidget {
|
||||
|
||||
21
lib/screens/languages.dart
Normal file
21
lib/screens/languages.dart
Normal file
@@ -0,0 +1,21 @@
|
||||
import 'package:checker/base/settings_base_state.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:checker/consts.dart';
|
||||
import 'package:checker/strings.dart';
|
||||
|
||||
class LanguagesScreen extends StatefulWidget {
|
||||
@override State createState() => new _LanguagesState();
|
||||
}
|
||||
|
||||
class _LanguagesState extends SettingsBaseState<LanguagesScreen> {
|
||||
|
||||
@override
|
||||
List<String> getOptions() {
|
||||
return languages;
|
||||
}
|
||||
|
||||
@override
|
||||
String getTitle() {
|
||||
return StringsLocalization.locale();
|
||||
}
|
||||
}
|
||||
@@ -8,7 +8,7 @@ import 'package:checker/strings.dart';
|
||||
import 'package:checker/common.dart';
|
||||
import 'package:checker/consts.dart';
|
||||
import 'package:checker/network.dart';
|
||||
import 'package:checker/base_state.dart';
|
||||
import 'package:checker/base/base_state.dart';
|
||||
import 'package:checker/screens/purchase_success.dart';
|
||||
|
||||
/// Экран проведения покупки.
|
||||
|
||||
@@ -3,7 +3,7 @@ import 'package:flutter/material.dart';
|
||||
import 'package:checker/common.dart';
|
||||
import 'package:checker/consts.dart';
|
||||
import 'package:checker/strings.dart';
|
||||
import 'package:checker/base_state.dart';
|
||||
import 'package:checker/base/base_state.dart';
|
||||
|
||||
/// Экран проведения покупки.
|
||||
class PurchaseSuccessScreen extends StatefulWidget {
|
||||
|
||||
@@ -5,7 +5,7 @@ import 'dart:convert'; // Пакет для обработки json с отве
|
||||
import 'package:checker/common.dart';
|
||||
import 'package:checker/consts.dart';
|
||||
import 'package:checker/network.dart';
|
||||
import 'package:checker/base_state.dart';
|
||||
import 'package:checker/base/base_state.dart';
|
||||
import 'package:checker/strings.dart';
|
||||
|
||||
/// Экран регистрации магазина и кассы.
|
||||
|
||||
@@ -1,15 +1,10 @@
|
||||
import 'package:checker/screens/currencies.dart';
|
||||
import 'package:checker/screens/languages.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:http/http.dart';
|
||||
import 'dart:convert';
|
||||
import 'dart:async';
|
||||
import 'package:checker/common.dart';
|
||||
import 'package:checker/network.dart';
|
||||
import 'package:checker/consts.dart';
|
||||
import 'package:checker/db.dart';
|
||||
import 'package:checker/strings.dart';
|
||||
import 'package:checker/base_state.dart';
|
||||
import 'package:checker/screens/registration.dart';
|
||||
import 'package:checker/screens/finish_registration.dart';
|
||||
import 'package:checker/base/base_state.dart';
|
||||
|
||||
class SettingsScreen extends StatefulWidget {
|
||||
@override State createState() => new _SettingsState();
|
||||
@@ -63,18 +58,23 @@ class _SettingsState extends BaseState<SettingsScreen> {
|
||||
|
||||
Widget getSettingsItem(MenuItem item) {
|
||||
return new Container(
|
||||
margin: const EdgeInsets.all(16.0),
|
||||
child: new Row(children: <Widget>[
|
||||
new Expanded(child: new Text(item.title)),
|
||||
new Text(item.selectedValue),
|
||||
getArrow()])
|
||||
);
|
||||
height: 56.0,
|
||||
child: (new FlatButton(onPressed: () => onPressed(menuItems.indexOf(item)),
|
||||
child: new Row(children: <Widget>[
|
||||
new Expanded(child: new Container(child: new Text(item.title))),
|
||||
new Text(item.selectedValue),
|
||||
getArrow()]))));
|
||||
}
|
||||
|
||||
void onPressed(int position) {
|
||||
switch (position) {
|
||||
case 0 : return pushRoute(context, new LanguagesScreen());
|
||||
case 1 : return pushRoute(context, new CurrenciesScreen());
|
||||
}
|
||||
}
|
||||
|
||||
Widget getArrow() {
|
||||
return new Image.asset(settings_arrow_png,
|
||||
width: 28.0,
|
||||
height: 28.0);
|
||||
return new Image.asset(settings_arrow_png);
|
||||
}
|
||||
|
||||
@override
|
||||
|
||||
@@ -9,7 +9,7 @@ import 'package:checker/network.dart';
|
||||
import 'package:checker/consts.dart';
|
||||
import 'package:checker/resources.dart';
|
||||
import 'package:checker/db.dart';
|
||||
import 'package:checker/base_state.dart';
|
||||
import 'package:checker/base/base_state.dart';
|
||||
import 'package:checker/screens/registration.dart';
|
||||
import 'package:checker/screens/finish_registration.dart';
|
||||
|
||||
@@ -27,6 +27,7 @@ class _SplashScreenState extends BaseState<SplashScreen> {
|
||||
helper.getSettings().then((info) {
|
||||
if (info == null) {
|
||||
platform.invokeMethod('getLocale').then((locale) {
|
||||
Intl.defaultLocale = locale;
|
||||
platform.invokeMethod('getCurrency').then((currency) {
|
||||
helper.createAppInfo(locale, currency).then((_) {
|
||||
showNext();
|
||||
|
||||
Reference in New Issue
Block a user