好用的Flutter轮子
Table of Contents
好用的pub轮子 #
Gatelligence功能 #
- flutter_simple_treeview: ^3.0.1:展示树形结构(摘要下一个版本必然要加入)
- flutter_treeview: ^1.0.7+1:展示树形结构(摘要下一个版本必然要加入)
- tree_view: ^0.0.6:展示树形结构(摘要下一个版本必然要加入)
- speech_to_text: ^5.4.3:调用系统功能实现语音转文字
- styled_text: ^5.1.0:在Text的原文中嵌入类似于html的标签,从而在行内渲染文本样式
- graphview: ^1.1.1:展示图形结构(摘要下一个版本必然要加入)
- floating_search_bar: ^0.3.0:搜索功能
- speech_recognition: ^0.3.0+1:本地文本转写(调用Android API:SpeechRecognizer)
- text_to_speech: ^0.2.3:文字转语音
动画 #
- show_up_animation: ^2.0.0:非常简便地搭建fade in动画
- anim_search_bar: ^2.0.2:效果很好的搜索bar,可弹出
- animated_splash: ^1.0.0:动画型的app启动画面
- custom_splash: ^0.0.2:动画型的app启动画面
- animate_do: ^2.1.0:更多的动画,且非常简单好用
- bouncing_widget: ^2.0.0:为可点击的东西添加点击缩放动画
- shimmer: ^2.0.0:给任何的widget覆盖一层加载动画
- draggable_home: ^1.0.2:不错的silver界面,堪比凝智使用的那个
- ripple_animation: ^0.0.1+2:好看的水波放射动画
- parallax_image: ^0.3.1+1:视差图片效果
- animated_text: ^1.0.2:非常牛逼的文本过渡动画!
- number_slide_animation: ^0.2.1:数字过渡动画,类似于机械表上的数字
用户界面 #
-
sizer: ^2.0.15:支持以屏幕的百分之多少去设置界面widget的宽度、高度
-
smooth_page_indicator: ^1.0.0+2:好看的页面指示器
-
dots_indicator: ^2.1.0:和smooth_page_indicator类似
-
dropdown_search: ^2.0.1:下拉搜索
-
extended_image:实现网络图片缓存,还提供加载动画和错误提示
-
material_design_icons_flutter: ^5.0.6595:更多的MD图标
-
flutter_icons: ^1.1.0:集成了常见的所有图标库
-
overlay_support: ^1.2.1:在应用外加了一层overlay,从而可以随意实现任何的应用内通知
-
another_flushbar: ^1.10.28:提供类似于snackbar的提示
-
flutter_linkify: ^5.0.2:使蓝色链接可以被点击
-
flutter_signin_button: ^2.0.0:生成不同平台的第三方登录按钮(仅UI)
-
grouped_list: ^4.2.0:快速实现分组listview,且带有小标题
-
sticky_grouped_list: ^2.1.0:快速实现分组listview,且带有小标题
-
syncfusion_flutter_sliders: ^20.1.48:实现滑动条,例如选择范围的场景
-
numberpicker: ^2.1.1:选择数字的widget,模仿iOS的闹钟
-
better_player: ^0.0.81:视频播放器
-
readmore: ^2.1.0:实现文本折叠,类似b站视频简介
-
dropdown_button2: ^1.4.0:更好看的下拉菜单实现,可自定义
-
flutter_picker: ^2.0.3:各种选项弹窗
-
flutter_masked_text: ^0.8.0:实现在输入文本之间插入固定符号,例如分割电话号码
-
sliver_tools: ^0.2.5:更多的sliver list的实现形式,例如分组、stack等
-
rounded_loading_button: ^2.1.0:带loading回调动画的按钮
-
progress_state_button: ^1.0.4:带loading回调动画的按钮
-
progress_indicator_button: ^0.0.3:带loading回调动画的按钮
-
timeago: ^3.2.2:简单地生成xxx分钟以前
-
adaptive_dialog: ^1.5.0+1:让显示的dialog自动适配android、ios界面风格
-
date_picker_timeline: ^1.2.3:好看的一线式日期选择器
-
settings_ui: ^2.0.2:自动生成settings页面
-
flutter_settings_ui: ^2.0.1:自动生成settings页面
-
record: ^3.0.4:录音机
-
rubber: ^1.0.1:bottom sheet
-
progress_indicators: ^1.0.0:一些可自定义的加载动画
-
bubble_tab_indicator: ^0.1.6:appbar上的分页navigator
-
autocomplete_textfield: ^1.7.3:自动填充的textfield
-
audio_video_progress_bar: ^0.10.0:音频或视频的进度条widget
-
group_button: ^5.0.0:建立相互制约的按钮、switch等组件
-
fading_edge_scrollview: ^2.0.1:在滚动时,让上下屏幕边缘的内容淡化
-
horizontal_data_table: ^3.6.1+1:横向的可scroll的表格
-
contained_tab_bar_view: ^0.8.0:方便地构建tabview
-
wave: ^0.2.0:波浪效果
-
custom_pop_up_menu: ^1.2.3+1:仿微信的pop up菜单,看起来像tootips的那个
-
popup_menu: ^1.0.5:仿微信的pop up菜单,看起来像tootips的那个
-
blur: ^3.1.0:组件添加高斯模糊
-
glassmorphism: ^3.0.0:毛玻璃效果 高斯模糊效果 Container
-
glass: ^1.0.1+1: 毛玻璃效果 高斯模糊效果 Container
-
flutter_animated_dialog: ^2.0.1:为dialog添加弹出动画
-
delayed_display: ^2.0.0:给不同的组件添加显示时差,从而可以实现漂亮的逐步动画
-
expand_widget: ^2.1.0:展开折叠文本
-
auto_size_text_field: ^1.0.1:自动调整字号的textfield
-
zoom_widget: ^0.2.1:对widget进行双指放大
-
swipe_to: ^1.0.2:实现类似qq里面的稍微滑动执行动作
-
slider_button: ^2.0.0:滑动来xx
-
slide_to_act: ^2.0.1:滑动来xx(更丝滑)
-
search_page: ^2.0.0+1:搜索页(全屏)
-
animate_icons: ^2.0.0:让icon支持过渡动画
-
simple_shadow: ^0.3.0:给任何widget添加阴影
-
context_menus: ^1.0.1:右键菜单
-
slide_countdown: ^0.2.3:倒计时(flip动画效果)
-
flutter_bounce: ^1.1.0:用于替代inkwell,制造令人舒适的点击放缩效果
-
vertical_card_pager: ^1.5.0:炫酷的卡片list效果
-
flutter_svprogresshud: ^1.0.0:好看的加载hud(比自己造轮子舒服点)
-
gradient_text: ^1.0.2:渐变字
-
dismissible_page: ^0.7.2:可用手势下滑关闭的page,类比微信图片下滑关闭
-
easy_sidemenu: ^0.2.1:类似于管理中台的侧边菜单,可折叠的那种
-
flutter_admin_scaffold: ^1.1.0:类似于管理中台的侧边菜单,可折叠的那种
-
side_navigation: ^0.0.7:类似于管理中台的侧边菜单,可折叠的那种
-
circular_countdown: ^2.1.0:炫酷的count down动画
-
status_change: ^2.0.0:step指示,类似于aizoo上传算子
-
shape_of_view: ^1.0.2:实现不规则的widget图形
-
cool_dropdown: ^1.4.1:好看的下拉菜单
-
flutter_expanded_tile: ^0.3.6:可以折叠的title菜单
-
sliver_fab: ^1.0.0:在silver的背景图片上加圆形的fab
-
flutter_neat_and_clean_calendar: ^0.3.4+17:好看的日历
-
scrollable_clean_calendar: ^1.1.0:好看的日历
-
about: ^2.1.1:快速生成about页
-
loop_page_view: ^1.1.1:横向滑动,可loop的轮播
-
flutter_grid_button: ^2.0.0:比较简单地构建类似于计算器键盘的填满grid的大按钮
-
arrow_path: ^2.0.0:利用path对象绘制箭头
-
responsive_grid_list: ^1.2.4:响应式的grid list
-
flutter_update_dialog: ^2.0.0:实现检查更新、一键更新按钮
-
draggable_bottom_sheet: ^0.1.2:底部sheet
-
bmprogresshud: ^1.0.1:不错的加载动画hud,类似于微信
-
fancy_on_boarding: ^1.7.0:不错的启动引导动画
-
left_scroll_actions: ^2.1.0:列表项滑动动作
-
sk_onboarding_screen: ^1.0.1:不错的首次开启介绍动画
-
swipeable: ^1.1.0:不错的滑动动作(例如微信里面的左滑小菜单),而且支持圆角
-
horizontal_picker: ^1.2.0:水平的picker,可以作为时间选择、温度选择什么的,很好看
-
floatingpanel: ^1.1.3:类似知乎的吸附小按钮,点击能弹出二级菜单
NavigationBar篇 #
- google_nav_bar: ^5.0.6(bubble_bottom_bar: ^2.0.0更全面):下方的IOS Youtube风格的好看的navbar
- bottom_bar_with_sheet: ^2.3.1:一体化的bottom sheet+bottom navibar
- custom_navigation_bar: ^0.8.2:template里面那个navibar
- flutter_snake_navigationbar: ^0.6.1:奇幻的navibar
- dot_navigation_bar: ^1.0.1+4:浮动的navibar
- floating_bottom_navigation_bar: ^1.5.2:浮动的navibar
- flashy_tab_bar: ^0.0.3:炫酷的navibar
实用工具 #
- change_app_package_name: ^1.0.0:一行命令修改包名
- faker: ^2.0.0:生成mock数据,例如人名、邮箱等
- random_color: ^1.0.5:生成随机的颜色
- colorful_safe_area: ^0.3.0:非常直观地查看widget所在区域
- measure_size: ^2.0.0:显示widget的大小
- version_banner: ^0.2.1:把debug条幅换成任意字符串
基础架构 #
- responsive_grid: ^2.0.0:网格布局,类似react中的grid,支持响应式(xs,md,…)
- relative_scale: ^2.0.0:相对屏幕大小进行布局
- get_storage: ^2.0.3:可以以同步的方式实现shared_prefrences
- jwt_decoder: ^2.0.1:解码自己的jwt token,可以用于预判其过期时间
- retry: ^3.1.0:异步任务失败自动重试
- pdf: ^3.7.3:生成和显示pdf
- image_editor: ^1.0.2:简单编辑图片(例如上传头像的场景)
- pretty_dio_logger: ^1.1.1:显示dio的log
- after_layout: ^1.1.0:当界面绘制完成,执行回调
- flutter_svg_provider: ^1.0.3:读取SVG作为Image Provider
- flutter_chat_ui: ^1.5.7:用户chat界面
- android_intent_plus: ^3.1.1:发送Android Intent
- receive_sharing_intent: ^1.4.5:接受IOS或Android的Intent
- filesize: ^2.0.1:接受字节数,转换成常用的大小单位描述的string
- sn_progress_dialog: ^1.0.6:进度dialog
- flutter_custom_tabs: ^1.0.4:在app内打开网页
- webview_windows: ^0.1.6:在app内打开网页(widget内窗口化)
- animated_widgets: ^1.1.0:非常简单地构建单widget动画,并且支持随时重新播放
- external_app_launcher: ^2.0.2:打开其他的app
- mysql1: ^0.19.2:直接连接数据库,防止中间商赚差价
- flutter_emoji: ^2.4.0:显示emoji
- flutter_glow: ^0.2.0:让widget支持glow效果的设计语言
- audioplayers_android: ^1.0.0-rc.1:支持同时播放很多audio的播放器
- time_machine: ^0.9.16:获取系统时间
- image_painter: ^0.4.5:图片编辑器
- draggable_widget: ^2.0.0:让widget可拖动并吸附在边缘
- drag_select_grid_view: ^0.5.1:仿iOS相册的可连续选择的grid
- is_first_run: ^1.0.0:检查是否是第一次运行
- scroll_app_bar: ^2.0.0:滚动时自动隐藏的appbar
- flutter_dropdown_alert: ^1.0.4:顶部通知
- get_time_ago: ^1.1.3:输入格式化的时间字符串,得到time ago的本地化表达
- flutter_charts: ^0.5.0:Material Design1风格的图表
- charts_painter: ^2.0.0+2:好看的图表
- easy_permission_validator: ^3.1.1:检查是否已授予某项权限
- avatar_letter: ^1.0.1:创建首字母头像
- app_popup_menu: ^1.0.0:实现appbar上的弹出菜单
- shadow: ^1.0.0:快速创建阴影
- searchable_listview: ^1.5.0:支持本地搜索的listview
语法扩展 #
- decimal: ^2.1.0:实现高精度浮点数运算
- tuple: ^2.0.0:引入c++中的 pair 数据结构
- string_validator: ^0.3.0:提供例如contains等string的扩充功能
- time: ^2.1.0:实现时间相关功能
- duration: ^3.0.11:实现时间相关功能
- string_extensions: ^0.4.3:提供例如touppercase等string的扩充功能
格式 #
-
flutter_inappwebview: ^5.3.2:在app内打开网页
-
flutter_html: ^2.2.1
-
markdown_widget: ^1.2.8:渲染markdown
-
html_editor_enhanced: ^2.4.0+1:html编辑器
-
flutter_quill: ^4.1.1:富文本编辑器
-
markdown: ^5.0.0:markdown转html
-
easy_rich_text: ^1.0.4:让指定的字符字符串应用格式
-
substring_highlight: ^1.0.33:让指定的字符字符串应用格式
-
pattern_formatter: ^2.0.0:让输入的文本格式化,例如自动添加数字分位逗号
-
flutter_tex: ^4.0.3+4:使支持LaTeX、KETex等。
-
selectable_autolink_text: ^2.3.0:让link变蓝,可以点击或可以分享
-
flutter_syntax_view: ^4.0.0:代码高亮
-
flutter_json_view: ^0.3.0:层级显示json
-
flutter_scatter: ^0.2.0:词云
-
code_text_field: ^1.0.2:代码编辑器
通知 #
- fluttertoast: 发送系统toast
处理和加密 #
- uuid:生成uuid等
- crypto:生成md5等
系统 #
- permission_handler:权限检查和代请求
- connectivity_plus、network_info_plus:自动测试网络信息
- qr_code_scanner: ^0.7.0:扫码
- flutter_keyboard_visibility: ^5.2.0:检测键盘是否弹出
- keyboard_utils: ^1.3.4:检测键盘是否弹出、键盘高度
- app_settings: ^4.1.5:打开系统设置
- clipboard: ^0.1.3:读取剪贴板,复制到剪贴板
- vibration: ^1.7.3:震动
- flutter_app_badger: ^1.4.0:在launcher的本应用icon上显示角标
- keyboard_actions: ^3.4.7:自定义系统键盘上面的快捷方式
- awesome_notifications: ^0.6.21:发送系统推送
- gallery_saver: ^2.3.2:保存网络图片到系统相册
- notification_permissions: ^0.6.1:检查是否有通知推送权限
- flutter_vibrate: ^1.3.0:震动
- flutter_windowmanager: ^0.2.0:探测是否切出了app
- background_fetch: ^1.1.0:让app在后台每隔15秒自启动一次
- keyboard_dismisser: ^2.0.1:强制关闭弹出了的键盘
- flutter_background_service: ^2.0.0:让app能够在后台执行代码(即运行service)
- screen: ^0.0.5:控制设备的屏幕,例如亮度
- external_app_launcher: ^2.0.2:打开其他的app
- flutter_background: ^1.1.0:强制app可以保持运行在后台
- fullscreen: ^1.0.3:切换全屏模式
- flutter_secure_screen: ^0.0.1:禁止截屏录屏
- flutter_dynamic_icon: ^2.1.0:动态变更app的icon