English | 中文
This project is an exercise project for individuals to learn Flutter.
Realize specific design effects by setting, modifying, combining self-contained widgets and customizing to meet the needs of daily development.
See the design catalog for the design drawings of this project.
The effect of some pages is as follows:
- mvp mode
- Use
provider
(version 6.x) for state management - Network request encapsulation based on
dio
(version 5.x) - Driver testing, accessibility testing.
- Support dark mode
- Localization(Thanks @ghedwards)
- Use
Sliver
series of components to achieve complex scrolling effects - Use amap Positioning to select address
- Pull down to refresh + pull up to load more
- Check update
- PopupWindow
- Scan code(qr_code_scanner plugin)
- Menu switching animation (circular diffusion, 3D flip)
- Sliding delete
- City selection
- Similar to the three-level linkage of Jingdong's choice of cities
- Custom Dialog
- Sticky headers
- Password input keyboard
- Verification code input
- Custom Simple Calendar
- Graphs and pie charts
- Modular routing management
- More optimization
Android package:Click to download,Password: 111111
。
iOS and Web needs to download the code to run.
Web:https://simplezhli.github.io/flutter_deer/
1. Flutter version 3.7.5
2. Dart version 2.19.2
-
iOS can execute commands
flutter build ios
to createrelease
versions. Android can execute commandsflutter build apk
to createrelease
versions. -
If there is a problem with the project, you can try to find a solution in the iOS problem summary and Android problem summary.
-
Due to some plug-ins, this project has imperfect support on the Windows and macOS. Those who are interested can run the experience by themselves.
-
You can execute integration test commands to
flutter drive --target=test_driver/driver.dart
view function demonstrations. -
I have added a relative path to the design drawings in the page notes. I can search or find the corresponding page. I hope it will help you.
-
This project uses the FlutterJsonBeanFactory plugin to generate beans.
库 | 功能 |
---|---|
dio | Network library |
provider | State management |
flutter_2d_amap | 2D AMap |
cached_network_image | Image loading |
fluro | Route |
flutter_oktoast | Toast |
common_utils | Dart common utils library |
flutter_slidable | Sliding delete |
flustars | Flutter common utils library |
flutter_swiper | Flutter banner component |
url_launcher | Launch URL plugin |
image_picker | Picture selection plugin |
rxdart | Dart responsive extension |
webview_flutter | WebView plugin |
keyboard_actions | Keyboard actions |
sticky_headers | Sticky headers |
azlistview | City selection list |
date_utils | Commonly used date tools |
bezier_chart | Bezier chart |
sprintf | Format String |
qr_code_scanner | Scan code |
intl | Localization |
device_info_plus | Device info |
vibration | Vibration |
lottie | lottie |
For details, please refer to the pubspec.yaml file.
-
Web support.
-
Migrate to null-safety.
-
Migrate to Navigator 2.0.
Copyright 2019 simplezhli
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
https://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.