just_a_dropdown 0.0.9
just_a_dropdown: ^0.0.9 copied to clipboard
searchable dropdown package
example/example.dart
import 'package:flutter/cupertino.dart';
import 'package:searable_dropodown/searable_dropodown.dart';
class Example extends StatefulWidget {
const Example({super.key});
@override
State<Example> createState() => _ExampleState();
}
class _ExampleState extends State<Example> {
UnitModel ? unitModel;
List unitList = [];
@override
Widget build(BuildContext context) {
return SearchableDropdownFormField(
hintText: "Select Unit",
childWidget: unitList.map((item) {
return StatefulBuilder(
builder: (context, setState) {
WidgetsBinding.instance.addPostFrameCallback((_) => setState(() {}));
setState(() {});
return Text(
"${item.unitName}",
);
}
);
}).toList(),
items: unitList,
value: unitModel == null ? "" : "${unitModel!.unitName}",
onSelected: (value){
unitModel = value!;
setState(() {});
return "${unitModel!.unitName}";
}, onChanged: (String? value ) { },
);
}
}
class UnitModel {
UnitModel({
required this.muId,
required this.unitName,
this.entDt,
this.checkboxValue,
});
int? muId;
String unitName;
String? entDt;
bool? checkboxValue;
factory UnitModel.fromJson(Map<String, dynamic> json) => UnitModel(
muId: json["mu_id"],
unitName: json["mu_unit"],
entDt: json["created_at"]??"",
checkboxValue: false,
);
Map<String, dynamic> toJson() => {
"mu_id": muId,
"mu_unit": unitName,
"ent_dt": entDt,
};
}