Files
checker/lib/screens/settings.dart

71 lines
1.8 KiB
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';
class SettingsScreen extends StatefulWidget {
@override State createState() => new _SettingsState();
}
class MenuItem {
MenuItem();
String title;
String selectedValue;
}
class _SettingsState extends BaseState<SettingsScreen> {
List<MenuItem> menuItems;
@override onStart() {
if (menuItems == null) {
helper.getSettings().then((info) {
setState(() {
print("load settings");
menuItems = [new MenuItem(), new MenuItem()];
menuItems[0].title = StringsLocalization.locale();
menuItems[0].selectedValue = info["locale"];
menuItems[1].title = StringsLocalization.currency();
menuItems[1].selectedValue = info["currency"].toString();
});
});
}
}
@override
Widget getScreenContent() {
return menuItems == null
? getBackground()
: new ListView(children: getSettings());
}
List<Widget> getSettings() {
List<Widget> widgets = new List();
for (MenuItem item in menuItems) {
widgets.add(new Row(children: [
new Text(item.title, textAlign: TextAlign.left),
new Text(item.selectedValue,textAlign: TextAlign.right),
new Image.asset(settings_arrow_png, width: 28.0, height: 28.0, alignment: FractionalOffset.centerRight)]));
}
return widgets;
}
@override
String getTitle() {
return StringsLocalization.settings();
}
}