v2.0.0
flutter_chips_input
Biblioteca Flutter para construção de campos de entrada com opções de entrada como InputChips.
106Curtidas 1,2 milDownloads em 30 dias70Pontos Pub
Plataformas indisponíveis
Campo de entrada do Flutter que aceita Chips do Material como entradas
{"sdk":"flutter"}{"sdk":"flutter"}^2.0.1Texto original em inglês. Visite o GitHub para a versão atual.
Flutter library for building input fields with InputChips as input options.
Pub Version GitHub Workflow Status Codecov CodeFactor Grade
Follow installation instructions here
import 'package:flutter_chips_input/flutter_chips_input.dart';
ChipsInput(
initialValue: [
AppProfile('John Doe', 'jdoe@flutter.io', 'https://d2gg9evh47fn9z.cloudfront.net/800px_COLOURBOX4057996.jpg')
],
decoration: InputDecoration(
labelText: "Select People",
),
maxChips: 3,
findSuggestions: (String query) {
if (query.length != 0) {
var lowercaseQuery = query.toLowerCase();
return mockResults.where((profile) {
return profile.name.toLowerCase().contains(query.toLowerCase()) || profile.email.toLowerCase().contains(query.toLowerCase());
}).toList(growable: false)
..sort((a, b) => a.name
.toLowerCase()
.indexOf(lowercaseQuery)
.compareTo(b.name.toLowerCase().indexOf(lowercaseQuery)));
} else {
return const <AppProfile>[];
}
},
onChanged: (data) {
print(data);
},
chipBuilder: (context, state, profile) {
return InputChip(
key: ObjectKey(profile),
label: Text(profile.name),
avatar: CircleAvatar(
backgroundImage: NetworkImage(profile.imageUrl),
),
onDeleted: () => state.deleteChip(profile),
materialTapTargetSize: MaterialTapTargetSize.shrinkWrap,
);
},
suggestionBuilder: (context, state, profile) {
return ListTile(
key: ObjectKey(profile),
leading: CircleAvatar(
backgroundImage: NetworkImage(profile.imageUrl),
),
title: Text(profile.name),
subtitle: Text(profile.email),
onTap: () => state.selectSuggestion(profile),
);
},
)
FormField implementation (ChipsInputField) to be used within Flutter Form Widget