一个 Flutter 包,可无缝集成 Material Design ListTile 与可自定义的原生风格开关,支持 Material 和 Cupertino 风格。它提供了一种简洁优雅的解决方案,用于创建具有统一跨平台外观的可切换列表项。该组件设计旨在通过轻量级且易于使用的功能,提升用户体验,兼具实用性和美观性。非常适合在设置或偏好设置屏幕中频繁使用开关的场景。
适合场景
设置界面
首选项面板
可切换的列表项
用户配置文件设置
表单控件
主要特点
可自定义的 Material 和 Cupertino 开关
无缝 ListTile 集成
跨平台一致性
轻量且高效
易于实现
样式灵活性
适合对象
开发设置屏幕的开发者
寻求原生样式的切换开关的设计人员
需要跨平台切换组件的应用程序
注重界面精修的项目
使用建议
需要 Flutter 3.0+
仅限开关特定功能
除了标准转换外,没有内置动画
复杂布局可能需要额外的样式
原始 README
以下为关联源码仓库的 README 原文快照,最新内容请访问源码仓库。
ListTileSwitch
ListTileSwitch is a simple widget that combines ListTile with a switch. Offering 3 types of switch widgets:
Switch: Material Switch from Material library on Flutter SDK.
CupertinoSwitch: CupertinoSwitch from Cupertino library on Flutter SDK.
A custom switch.
Tested on Android and Web but not iOS. Theoritacially it should work on iOS devices too, since this package contains nothing but pure Dart and Flutter components.
Installation
Add dependency for package on your pubspec.yaml:
dependencies:
list_tile_switch: <latest>
Usage
Use it as a regular ListTile widget with a bonus: the trailing widget is a switch. Covering all aspects of the ListTile and adding more with a custom switch.
Parameter
Definition
double switchScale
Adjusting the scale of the switch widget.
Color switchActiveColor
The color of the switch when the switch is active.
bool toggleSelectedOnValueChange
Deciding whether to color the ListTile when switch value is true, the selected color will be the switchActiveColor.