ios_color_picker
A Flutter package that provides an iOS-style color picker UI for every Flutter platform, plus access to the native iOS color picker on iOS.
Supported Platforms
- Linux
- macOS
- Web
- Windows
- iOS
- Android
Requirements
- Flutter 3.41.0 or later
- Dart 3.11.4 or later
- Android minSdk 24
- iOS 14.0 or later for the native iOS picker
- macOS 10.15 or later
Features
Screenshots & Demo
Getting Started
Add the package and create a controller. Dispose the controller from your
widget's dispose method because the native iOS picker streams color changes
through an event channel.
Usage
final iosColorPickerController = IOSColorPickerController();
/// Native iOS Color Picker
ElevatedButton(
onPressed: () {
iosColorPickerController.showNativeIosColorPicker(
startingColor: backgroundColor,
darkMode: true,
onColorChanged: (color) {
setState(() {
backgroundColor = color;
});
},
);
},
child: Text("Native iOS"),
),
/// Custom iOS Color Picker (for all platforms)
ElevatedButton(
onPressed: () {
iosColorPickerController.showIOSCustomColorPicker(
startingColor: backgroundColor,
onColorChanged: (color) {
setState(() {
backgroundColor = color;
});
},
context: context,
);
},
child: Text("Custom iOS for all"),
),
Dispose the controller:
final IOSColorPickerController iosColorPickerController =
IOSColorPickerController();
@override
void dispose() {
iosColorPickerController.dispose();
super.dispose();
}
Example
Run the app in the example/ folder to explore the plugin.
Additional Information
For more updates and inquiries, connect with me on LinkedIn:
Libraries
- custom_picker/color_observer
- custom_picker/extensions
- custom_picker/helpers/cache_helper
- custom_picker/history_colors
- custom_picker/ios_color_picker
- custom_picker/palette
- custom_picker/pickers/area_picker
- custom_picker/pickers/grid_picker
- custom_picker/pickers/slider_picker/slider_helper
- custom_picker/pickers/slider_picker/slider_picker
- custom_picker/pickers_selector_row
- custom_picker/utils
- native_picker/ios_color_picker
- native_picker/ios_color_picker_method_channel
- native_picker/ios_color_picker_platform_interface
- native_picker/ios_color_picker_web
- show_ios_color_picker