awesome_select_plus 1.0.0
awesome_select_plus: ^1.0.0 copied to clipboard
Easily convert your usual single/multiple select or dropdown into page, dialog, or bottom sheet with various choice input such as radio, checkbox, switch, chips, or custom widget.
example/lib/main.dart
import 'package:awesomeselect/theme/theme.dart';
import 'package:flutter/material.dart';
import 'features.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
// This widget is the root of your application.
@override
Widget build(BuildContext context) {
return ThemePatrol(
light: ThemeData(
brightness: Brightness.light,
primarySwatch: Colors.red,
primaryColor: Colors.red,
colorScheme: ColorScheme.light(secondary: Colors.red),
visualDensity: VisualDensity.adaptivePlatformDensity,
),
dark: ThemeData(
brightness: Brightness.dark,
primarySwatch: Colors.red,
primaryColor: Colors.red,
colorScheme: ColorScheme.dark(secondary: Colors.red),
visualDensity: VisualDensity.adaptivePlatformDensity,
checkboxTheme: CheckboxThemeData(
fillColor: WidgetStateProperty.resolveWith<Color?>(
(Set<WidgetState> states) {
if (states.contains(WidgetState.disabled)) {
return null;
}
if (states.contains(WidgetState.selected)) {
return Colors.red;
}
return null;
}),
),
radioTheme: RadioThemeData(
fillColor: WidgetStateProperty.resolveWith<Color?>(
(Set<WidgetState> states) {
if (states.contains(WidgetState.disabled)) {
return null;
}
if (states.contains(WidgetState.selected)) {
return Colors.red;
}
return null;
}),
),
switchTheme: SwitchThemeData(
thumbColor: WidgetStateProperty.resolveWith<Color?>(
(Set<WidgetState> states) {
if (states.contains(WidgetState.disabled)) {
return null;
}
if (states.contains(WidgetState.selected)) {
return Colors.red;
}
return null;
}),
trackColor: WidgetStateProperty.resolveWith<Color?>(
(Set<WidgetState> states) {
if (states.contains(WidgetState.disabled)) {
return null;
}
if (states.contains(WidgetState.selected)) {
return Colors.red;
}
return null;
}),
),
),
mode: ThemeMode.system,
builder: (context, theme) {
return MaterialApp(
title: 'Smart Select',
theme: theme?.light,
darkTheme: theme?.dark,
themeMode: theme?.mode,
home: Features(),
);
},
);
}
}