Bladeren bron

站点切换弹层

daxu0403 7 jaren geleden
bovenliggende
commit
14892a553e

+ 1 - 0
.flutter-plugins

@@ -1,2 +1,3 @@
 city_pickers=/Users/daxu/app/flutter/.pub-cache/hosted/pub.dartlang.org/city_pickers-0.0.4/
+flutter_picker=/Users/daxu/app/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_picker-1.0.8/
 shared_preferences=/Users/daxu/app/flutter/.pub-cache/hosted/pub.dartlang.org/shared_preferences-0.5.1+1/

+ 2 - 1
.packages

@@ -1,4 +1,4 @@
-# Generated by pub on 2019-03-04 17:43:48.429447.
+# Generated by pub on 2019-03-06 16:52:52.878346.
 async:file:///Users/daxu/app/flutter/.pub-cache/hosted/pub.dartlang.org/async-2.0.8/lib/
 boolean_selector:file:///Users/daxu/app/flutter/.pub-cache/hosted/pub.dartlang.org/boolean_selector-1.0.4/lib/
 charcode:file:///Users/daxu/app/flutter/.pub-cache/hosted/pub.dartlang.org/charcode-1.1.2/lib/
@@ -8,6 +8,7 @@ cookie_jar:file:///Users/daxu/app/flutter/.pub-cache/hosted/pub.dartlang.org/coo
 cupertino_icons:file:///Users/daxu/app/flutter/.pub-cache/hosted/pub.dartlang.org/cupertino_icons-0.1.2/lib/
 dio:file:///Users/daxu/app/flutter/.pub-cache/hosted/pub.dartlang.org/dio-2.0.14/lib/
 flutter:file:///Users/daxu/app/flutter/packages/flutter/lib/
+flutter_picker:file:///Users/daxu/app/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_picker-1.0.8/lib/
 flutter_screenutil:file:///Users/daxu/app/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_screenutil-0.5.1/lib/
 flutter_test:file:///Users/daxu/app/flutter/packages/flutter_test/lib/
 lpinyin:file:///Users/daxu/app/flutter/.pub-cache/hosted/pub.dartlang.org/lpinyin-1.0.7/lib/

BIN
android/.gradle/4.10.2/fileHashes/fileHashes.bin


BIN
android/.gradle/4.10.2/fileHashes/fileHashes.lock


BIN
android/.gradle/4.10.2/taskHistory/taskHistory.bin


BIN
android/.gradle/4.10.2/taskHistory/taskHistory.lock


BIN
android/.gradle/buildOutputCleanup/buildOutputCleanup.lock


+ 2 - 0
android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java

@@ -2,6 +2,7 @@ package io.flutter.plugins;
 
 import io.flutter.plugin.common.PluginRegistry;
 import com.example.citypickers.CityPickersPlugin;
+import com.yangyxd.flutterpicker.FlutterPickerPlugin;
 import io.flutter.plugins.sharedpreferences.SharedPreferencesPlugin;
 
 /**
@@ -13,6 +14,7 @@ public final class GeneratedPluginRegistrant {
       return;
     }
     CityPickersPlugin.registerWith(registry.registrarFor("com.example.citypickers.CityPickersPlugin"));
+    FlutterPickerPlugin.registerWith(registry.registrarFor("com.yangyxd.flutterpicker.FlutterPickerPlugin"));
     SharedPreferencesPlugin.registerWith(registry.registrarFor("io.flutter.plugins.sharedpreferences.SharedPreferencesPlugin"));
   }
 

+ 2 - 0
ios/Runner/GeneratedPluginRegistrant.m

@@ -4,12 +4,14 @@
 
 #import "GeneratedPluginRegistrant.h"
 #import <city_pickers/CityPickersPlugin.h>
+#import <flutter_picker/FlutterPickerPlugin.h>
 #import <shared_preferences/SharedPreferencesPlugin.h>
 
 @implementation GeneratedPluginRegistrant
 
 + (void)registerWithRegistry:(NSObject<FlutterPluginRegistry>*)registry {
   [CityPickersPlugin registerWithRegistrar:[registry registrarForPlugin:@"CityPickersPlugin"]];
+  [FlutterPickerPlugin registerWithRegistrar:[registry registrarForPlugin:@"FlutterPickerPlugin"]];
   [FLTSharedPreferencesPlugin registerWithRegistrar:[registry registrarForPlugin:@"FLTSharedPreferencesPlugin"]];
 }
 

+ 104 - 50
lib/pages/my_page.dart

@@ -1,7 +1,8 @@
 import 'package:flutter/material.dart';
 import 'package:flutter_screenutil/flutter_screenutil.dart';
 import 'my_page/revise_password_page.dart';
-
+import 'package:flutter_picker/flutter_picker.dart';
+import 'dart:convert';
 
 class MyPage extends StatefulWidget {
   final Widget child;
@@ -14,10 +15,20 @@ class MyPage extends StatefulWidget {
   _MyPageState createState() => _MyPageState();
 }
 
-class _MyPageState extends State < MyPage > with AutomaticKeepAliveClientMixin{
+class _MyPageState extends State < MyPage > with AutomaticKeepAliveClientMixin {
+
   bool check = false;
   @override
   bool get wantKeepAlive => true;
+  String _siteName = "请选择站点";
+
+  @override
+  void initState() {
+    // TODO: implement initState
+    super.initState();
+
+  }
+
   @override
   Widget build(BuildContext context) {
     return Container(
@@ -36,7 +47,7 @@ class _MyPageState extends State < MyPage > with AutomaticKeepAliveClientMixin{
           child: Column(
             children: < Widget > [
               _avatarWidget(),
-              _funWrapWidget(check)
+              _funWrapWidget(check, context)
             ],
           ),
         ),
@@ -68,12 +79,12 @@ class _MyPageState extends State < MyPage > with AutomaticKeepAliveClientMixin{
     );
   }
 
-  Widget _funWrapWidget(bool check) {
+  Widget _funWrapWidget(bool check, BuildContext context) {
     return Container(
       padding: EdgeInsets.only(top: ScreenUtil.getInstance().setHeight(20)),
       child: Column(
         children: < Widget > [
-          _switchSite(),
+          _switchSite(context),
           _passWordWidget(),
           _linkPrint(check)
         ],
@@ -81,55 +92,89 @@ class _MyPageState extends State < MyPage > with AutomaticKeepAliveClientMixin{
     );
   }
 
-  Widget _switchSite() {
-    return Container(
-      height: ScreenUtil.getInstance().setHeight(90),
-      color: Colors.white,
-      padding: EdgeInsets.fromLTRB(ScreenUtil.getInstance().setHeight(30), 0, 0, 0),
-      child: Column(
-        children: < Widget > [
-          Expanded(
-            child: Center(
-              child: Row(
-                mainAxisAlignment: MainAxisAlignment.spaceBetween,
-                children: < Widget > [
-                  Expanded(
-                    child: Row(
-                      mainAxisAlignment: MainAxisAlignment.start,
-                      children: < Widget > [
-                        Padding(
-                          padding: EdgeInsets.only(right: ScreenUtil.getInstance().setWidth(22)),
-                          child: Image.asset('lib/images/icon_zhandianss.png',
-                            width: ScreenUtil.getInstance().setWidth(30),
-                            height: ScreenUtil.getInstance().setHeight(34),
-                          )
-                        ),
-                        Text('站点切换', style: TextStyle(fontSize: ScreenUtil.getInstance().setSp(30), color: Color.fromRGBO(74, 74, 74, 1)), ),
-                      ],
+  Widget _switchSite(BuildContext context) {
+    return InkWell(
+      child: Container(
+        height: ScreenUtil.getInstance().setHeight(90),
+        color: Colors.white,
+        padding: EdgeInsets.fromLTRB(ScreenUtil.getInstance().setHeight(30), 0, 0, 0),
+        child: Column(
+          children: < Widget > [
+            Expanded(
+              child: Center(
+                child: Row(
+                  mainAxisAlignment: MainAxisAlignment.spaceBetween,
+                  children: < Widget > [
+                    Expanded(
+                      child: Row(
+                        mainAxisAlignment: MainAxisAlignment.start,
+                        children: < Widget > [
+                          Padding(
+                            padding: EdgeInsets.only(right: ScreenUtil.getInstance().setWidth(22)),
+                            child: Image.asset('lib/images/icon_zhandianss.png',
+                              width: ScreenUtil.getInstance().setWidth(30),
+                              height: ScreenUtil.getInstance().setHeight(34),
+                            )
+                          ),
+                          Text('站点切换', style: TextStyle(fontSize: ScreenUtil.getInstance().setSp(30), color: Color.fromRGBO(74, 74, 74, 1)), ),
+                        ],
+                      ),
                     ),
-                  ),
-                  Expanded(
-                    child: Row(
-                      mainAxisAlignment: MainAxisAlignment.end,
-                      children: < Widget > [
-                        Text('大兴站点', style: TextStyle(fontSize: ScreenUtil.getInstance().setSp(30), color: Color.fromRGBO(153, 153, 153, 1)), ),
-                        Icon(Icons.keyboard_arrow_right, color: Color.fromRGBO(199, 199, 204, 1))
-                      ],
+                    Expanded(
+                      child: Row(
+                        mainAxisAlignment: MainAxisAlignment.end,
+                        children: < Widget > [
+                          Text(_siteName, style: TextStyle(fontSize: ScreenUtil.getInstance().setSp(30), color: Color.fromRGBO(153, 153, 153, 1)), ),
+                          Icon(Icons.keyboard_arrow_right, color: Color.fromRGBO(199, 199, 204, 1))
+                        ],
+                      ),
                     ),
-                  ),
-                ],
+                  ],
+                ),
               ),
             ),
-          ),
-          Expanded(
-            flex: 0,
-            child: _underLine(),
-          )
-        ],
-      )
+            Expanded(
+              flex: 0,
+              child: _underLine(),
+            )
+          ],
+        )
+      ),
+      onTap: () {
+        // showDialog < Null > (
+        //   context: context, //BuildContext对象
+        //   barrierDismissible: false,
+        //   builder: (BuildContext context) {
+        //     return SiteDialog( //调用对话框
+
+        //     );
+        //   });
+        showPickerModal(context);
+      },
     );
   }
-
+  showPickerModal(BuildContext context) {
+    new Picker(
+      adapter: PickerDataAdapter < String > (pickerdata: new JsonDecoder().convert('["回龙观","草桥","丰台"]')),
+      height: ScreenUtil.getInstance().setHeight(450),
+      confirmText: '确定',
+      confirmTextStyle: TextStyle(fontSize: ScreenUtil.getInstance().setSp(30),color: Color.fromRGBO(64,98,254,1)),
+      cancelText: '取消',
+      cancelTextStyle: TextStyle(fontSize: ScreenUtil.getInstance().setSp(30),color: Color.fromRGBO(153,153,153,1)),
+      headercolor: Color.fromRGBO(245,245,245,1),
+      itemExtent: ScreenUtil.getInstance().setHeight(80),
+      textStyle: TextStyle(fontSize: ScreenUtil.getInstance().setSp(30),color: Color.fromRGBO(42,42,42,1)),
+      changeToFirst: true,
+      hideHeader: false,
+      onConfirm: (Picker picker, List value) {
+        print(value.toString());
+        print(picker.adapter);
+        setState(() {
+          _siteName = picker.adapter.text+'站点';
+        });
+      }
+    ).showModal(this.context); //_scaffoldKey.currentState);
+  }
   Widget _underLine() {
     return Container(
       height: ScreenUtil.getInstance().setHeight(1),
@@ -218,7 +263,7 @@ class _MyPageState extends State < MyPage > with AutomaticKeepAliveClientMixin{
                       this.setState(() {
                         this.check = val;
                       });
-                       print('check:${this.check}');
+                      print('check:${this.check}');
                     },
                   )
                 ],
@@ -229,4 +274,13 @@ class _MyPageState extends State < MyPage > with AutomaticKeepAliveClientMixin{
       )
     );
   }
-}
+}
+
+
+
+// //打印机弹出层
+// class PrintDialog extends Dialog {
+//   PrintDialog({
+//     Key key,
+//   }): super(key: key);
+// }

+ 13 - 1
lib/pages/order_management_page.dart

@@ -58,6 +58,7 @@ class QueryWidget extends StatefulWidget { //搜索栏
 class _QueryWidgetState extends State < QueryWidget > {
   //单号的输入框控制器
   TextEditingController _orderController = TextEditingController();
+  ScrollController _scrollController =ScrollController();
 
   GlobalKey _globalKey = GlobalKey(); //搜索栏key
   List < bool > statusList = [true, false, false];
@@ -68,6 +69,17 @@ class _QueryWidgetState extends State < QueryWidget > {
   bool showStatus = true; //提示层显示状态
   String _orderNo = "";
 
+  @override
+  void initState() {
+    // TODO: implement initState
+    super.initState();
+    _scrollController.addListener((){
+      if (_scrollController.position.pixels == _scrollController.position.maxScrollExtent) {
+        print("滑到底部了");
+      }
+    });
+  }
+
   @override
   Widget build(BuildContext context) {
     return Stack(
@@ -94,7 +106,6 @@ class _QueryWidgetState extends State < QueryWidget > {
                             child: TextField(
                               controller: _orderController,
                               keyboardType: TextInputType.number,
-                              autofocus: true,
                               autocorrect: true,
                               decoration: InputDecoration(
                                 border: InputBorder.none,
@@ -236,6 +247,7 @@ class _QueryWidgetState extends State < QueryWidget > {
                 child: Container(
                   padding: EdgeInsets.fromLTRB(ScreenUtil.getInstance().setWidth(20), ScreenUtil.getInstance().setWidth(20), ScreenUtil.getInstance().setWidth(20), 0),
                   child: ListView(
+                    controller: _scrollController,
                     children: < Widget > [
                       _cardWiget(),
                       _cardWiget(),

+ 0 - 10
lib/pages/send_express_page.dart

@@ -131,16 +131,6 @@ class _SendExpressPageState extends State < SendExpressPage > with AutomaticKeep
                     children: < Widget > [
                       _tipItem(),
                       _tipItem(),
-                      _tipItem(),
-                      _tipItem(),
-                      _tipItem(),
-                      _tipItem(),
-                      _tipItem(),
-                      _tipItem(),
-                      _tipItem(),
-                      _tipItem(),
-                      _tipItem(),
-                      _tipItem(),
                     ],
                   ),
                 ),

+ 7 - 0
pubspec.lock

@@ -62,6 +62,13 @@ packages:
     description: flutter
     source: sdk
     version: "0.0.0"
+  flutter_picker:
+    dependency: "direct main"
+    description:
+      name: flutter_picker
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.0.8"
   flutter_screenutil:
     dependency: "direct main"
     description:

+ 2 - 0
pubspec.yaml

@@ -27,6 +27,8 @@ dependencies:
   shared_preferences: ^0.5.0
   # 省市区三级联动
   city_pickers: ^0.0.1
+  #picker
+  flutter_picker: ^1.0.8
 
 dev_dependencies:
   flutter_test: