搜索插件、代码仓与 APP 分类

flutter_colorpicker 封面
插件详情v1.1.0

flutter_colorpicker

HSV(HSB)/HSL/RGB/Material 颜色选择器,灵感来自所有优秀的设计,为您的精彩 Flutter 应用提供支持。

AndroidiOSWebmacOSWindowsLinux
近 30 天下载
60.4万
喜欢数
1030
Pub 分数
150

安装插件

flutter pub add flutter_colorpicker

插件介绍

基于插件公开信息、社区数据与项目使用情况整理的选型参考。

一个Flutter包,提供HSV(HSB)、HSL、RGB和Material色彩选择器,设计灵感来自现代设计原则。它提供了直观且视觉上吸引人的小部件,用于在多种色彩模型中选择颜色,非常适合需要丰富色彩自定义的应用程序。该选择器支持所有主要平台,包括Android、iOS、Web、macOS、Windows和Linux,确保一致的用户体验。基于Flutter的小部件系统构建,可无缝集成到现有项目中。该包积极维护且开源,允许开发者扩展或贡献其功能。

适合场景

  • 自定义主题创建
  • 设计工具中的颜色选择
  • 应用界面自定义
  • 交互式配色方案
  • 用户偏好设置

主要特点

  • HSV/HSL/RGB/材料色彩模型
  • 跨平台兼容性
  • 现代、简洁的用户界面设计
  • 与 Flutter 的轻松集成
  • 开源且持续维护

适合对象

  • UI/UX 开发人员
  • 注重设计的应用程序
  • 色彩密集型应用
  • Flutter 初学者和专家

使用建议

  • 需要理解色彩模型
  • 可能需要为自定义主题添加额外的样式
  • 限于颜色选择,不支持完整调色板管理

原始 README

以下为关联源码仓库的 README 原文快照,最新内容请访问源码仓库。

flutter_colorpicker

pub package badge

HSV(HSB)/HSL/RGB/Material color picker inspired by all the good design for your amazing flutter apps.
Adorable color pickers out of the box with highly customized widgets to all developers' needs.

Web Example

Getting Started

Use it in [showDialog] widget:

// create some values
Color pickerColor = Color(0xff443a49);
Color currentColor = Color(0xff443a49);

// ValueChanged<Color> callback
void changeColor(Color color) {
  setState(() => pickerColor = color);
}

// raise the [showDialog] widget
showDialog(
  context: context,
  child: AlertDialog(
    title: const Text('Pick a color!'),
    content: SingleChildScrollView(
      child: ColorPicker(
        pickerColor: pickerColor,
        onColorChanged: changeColor,
      ),
      // Use Material color picker:
      //
      // child: MaterialPicker(
      //   pickerColor: pickerColor,
      //   onColorChanged: changeColor,
      //   showLabel: true, // only on portrait mode
      // ),
      //
      // Use Block color picker:
      //
      // child: BlockPicker(
      //   pickerColor: currentColor,
      //   onColorChanged: changeColor,
      // ),
      //
      // child: MultipleChoiceBlockPicker(
      //   pickerColors: currentColors,
      //   onColorsChanged: changeColors,
      // ),
    ),
    actions: <Widget>[
      ElevatedButton(
        child: const Text('Got it'),
        onPressed: () {
          setState(() => currentColor = pickerColor);
          Navigator.of(context).pop();
        },
      ),
    ],
  ),
)

preview SlidePicker

Details in example folder.

所属分类

源码仓库

使用此插件的项目