flutter_picker
所属分类:Flutter开发
开发工具:Dart
文件大小:1216KB
下载次数:0
上传日期:2023-04-04 19:17:30
上 传 者:
sh-1993
说明: 颤振选择器插件
(Flutter picker plugin)
文件列表:
.metadata (319, 2023-03-07)
CHANGELOG.md (3920, 2023-03-07)
LICENSE (1084, 2023-03-07)
example (0, 2023-03-07)
example\.metadata (1668, 2023-03-07)
example\analysis_options.yaml (1482, 2023-03-07)
example\android (0, 2023-03-07)
example\android\app (0, 2023-03-07)
example\android\app\build.gradle (2259, 2023-03-07)
example\android\app\src (0, 2023-03-07)
example\android\app\src\debug (0, 2023-03-07)
example\android\app\src\debug\AndroidManifest.xml (420, 2023-03-07)
example\android\app\src\main (0, 2023-03-07)
example\android\app\src\main\AndroidManifest.xml (1701, 2023-03-07)
example\android\app\src\main\kotlin (0, 2023-03-07)
example\android\app\src\main\kotlin\com (0, 2023-03-07)
example\android\app\src\main\kotlin\com\yangyxd (0, 2023-03-07)
example\android\app\src\main\kotlin\com\yangyxd\example (0, 2023-03-07)
example\android\app\src\main\kotlin\com\yangyxd\example\MainActivity.kt (130, 2023-03-07)
example\android\app\src\main\res (0, 2023-03-07)
example\android\app\src\main\res\drawable-v21 (0, 2023-03-07)
example\android\app\src\main\res\drawable-v21\launch_background.xml (450, 2023-03-07)
example\android\app\src\main\res\drawable (0, 2023-03-07)
example\android\app\src\main\res\drawable\launch_background.xml (446, 2023-03-07)
example\android\app\src\main\res\mipmap-hdpi (0, 2023-03-07)
example\android\app\src\main\res\mipmap-hdpi\ic_launcher.png (544, 2023-03-07)
example\android\app\src\main\res\mipmap-mdpi (0, 2023-03-07)
example\android\app\src\main\res\mipmap-mdpi\ic_launcher.png (442, 2023-03-07)
example\android\app\src\main\res\mipmap-xhdpi (0, 2023-03-07)
example\android\app\src\main\res\mipmap-xhdpi\ic_launcher.png (721, 2023-03-07)
example\android\app\src\main\res\mipmap-xxhdpi (0, 2023-03-07)
... ...
# flutter_picker
[![pub package](https://img.shields.io/pub/v/flutter_picker.svg)](https://pub.dartlang.org/packages/flutter_picker)
![GitHub](https://img.shields.io/github/license/yangyxd/flutter_picker.svg)
[![GitHub stars](https://img.shields.io/github/stars/yangyxd/flutter_picker.svg?style=social&label=Stars)](https://github.com/yangyxd/flutter_picker)
Flutter plugin picker. Include NumberPicker, DateTimePicker, ArrayPicker, and default linkage Picker. Provide flexible parameters to meet various needs. At the same time, you can extend more functions through custom adapters.
> Supported Platforms
> * Android
> * IOS
> * Windows
> * MacOS
> * Linux
> * Web
![image](https://github.com/yangyxd/flutter_picker/blob/master/raw/views.gif)
## How to Use
```yaml
# add this line to your dependencies
flutter_picker:
git:
url: https://github.com/yangyxd/flutter_picker.git
```
```dart
import 'package:flutter_picker/flutter_picker.dart';
```
```dart
showPicker(BuildContext context) {
Picker picker = new Picker(
adapter: PickerDataAdapter(pickerdata: new JsonDecoder().convert(PickerData)),
changeToFirst: true,
textAlign: TextAlign.left,
columnPadding: const EdgeInsets.all(8.0),
onConfirm: (Picker picker, List value) {
print(value.toString());
print(picker.getSelectedValues());
}
);
picker.show(_scaffoldKey.currentState);
}
showPickerModal(BuildContext context) {
new Picker(
adapter: PickerDataAdapter(pickerdata: new JsonDecoder().convert(PickerData)),
changeToFirst: true,
hideHeader: false,
onConfirm: (Picker picker, List value) {
print(value.toString());
print(picker.adapter.text);
}
).showModal(this.context); //_scaffoldKey.currentState);
}
showPickerIcons(BuildContext context) {
new Picker(
adapter: PickerDataAdapter(data: [
new PickerItem(text: Icon(Icons.add), value: Icons.add, children: [
new PickerItem(text: Icon(Icons.more)),
new PickerItem(text: Icon(Icons.aspect_ratio)),
new PickerItem(text: Icon(Icons.android)),
new PickerItem(text: Icon(Icons.menu)),
]),
new PickerItem(text: Icon(Icons.title), value: Icons.title, children: [
new PickerItem(text: Icon(Icons.more_vert)),
new PickerItem(text: Icon(Icons.ac_unit)),
new PickerItem(text: Icon(Icons.access_alarm)),
new PickerItem(text: Icon(Icons.account_balance)),
]),
new PickerItem(text: Icon(Icons.face), value: Icons.face, children: [
new PickerItem(text: Icon(Icons.add_circle_outline)),
new PickerItem(text: Icon(Icons.add_a_photo)),
new PickerItem(text: Icon(Icons.access_time)),
new PickerItem(text: Icon(Icons.adjust)),
]),
new PickerItem(text: Icon(Icons.linear_scale), value: Icons.linear_scale, children: [
new PickerItem(text: Icon(Icons.assistant_photo)),
new PickerItem(text: Icon(Icons.account_balance)),
new PickerItem(text: Icon(Icons.airline_seat_legroom_extra)),
new PickerItem(text: Icon(Icons.airport_shuttle)),
new PickerItem(text: Icon(Icons.settings_bluetooth)),
]),
new PickerItem(text: Icon(Icons.close), value: Icons.close),
]),
title: new Text("Select Icon"),
onConfirm: (Picker picker, List value) {
print(value.toString());
print(picker.getSelectedValues());
}
).show(_scaffoldKey.currentState);
}
showPickerDialog(BuildContext context) {
new Picker(
adapter: PickerDataAdapter(pickerdata: new JsonDecoder().convert(PickerData)),
hideHeader: true,
title: new Text("Select Data"),
onConfirm: (Picker picker, List value) {
print(value.toString());
print(picker.getSelectedValues());
}
).showDialog(context);
}
showPickerArray(BuildContext context) {
new Picker(
adapter: PickerDataAdapter(pickerdata: new JsonDecoder().convert(PickerData2), isArray: true),
hideHeader: true,
title: new Text("Please Select"),
onConfirm: (Picker picker, List value) {
print(value.toString());
print(picker.getSelectedValues());
}
).showDialog(context);
}
showPickerNumber(BuildContext context) {
new Picker(
adapter: NumberPickerAdapter(data: [
NumberPickerColumn(begin: 0, end: 999),
NumberPickerColumn(begin: 100, end: 200),
]),
delimiter: [
PickerDelimiter(child: Container(
width: 30.0,
alignment: Alignment.center,
child: Icon(Icons.more_vert),
))
],
hideHeader: true,
title: new Text("Please Select"),
onConfirm: (Picker picker, List value) {
print(value.toString());
print(picker.getSelectedValues());
}
).showDialog(context);
}
```
## PickerData Example
### Array
```dart
const PickerData2 = '''
[
[
1,
2,
3,
4
],
[
11,
22,
33,
44
],
[
"***",
"bbb",
"ccc"
]
]
''';
```
### Linkage
```dart
const PickerData = '''
[
{
"a": [
{
"a1": [
1,
2,
3,
4
]
},
{
"a2": [
5,
6,
7,
8
]
},
{
"a3": [
9,
10,
11,
12
]
}
]
},
{
"b": [
{
"b1": [
11,
22,
33,
44
]
},
{
"b2": [
55,
66,
77,
88
]
},
{
"b3": [
99,
1010,
1111,
1212
]
}
]
},
{
"c": [
{
"c1": [
"a",
"b",
"c"
]
},
{
"c2": [
"aa",
"bb",
"cc"
]
},
{
"c3": [
"***",
"bbb",
"ccc"
]
}
]
}
]
''';
```
近期下载者:
相关文件:
收藏者: