Я создал приложение Agro, в котором большинство пользователей находятся в автономном режиме, когда регистрируют данные, а когда они возвращаются на центральный сайт, они получают подключение к Интернету, и данные увеличиваются.
Однако пользователю непонятно, была ли его запись загружена в облако, поэтому я хотел бы реализовать систему галочек, аналогичную той, что используется в WhatsApp:
Серая галочка, когда данные записываются и находятся только в кеше
Синяя галочка, когда данные загружаются в облако и, следовательно, доступны другим пользователям.
Я представляю что-то вроде этого:
Процедура отображения списка выглядит следующим образом:
Widget _crearListado(BuildContext context, AlimentarBloc alimentarBloc) {
return Column(
children: <Widget>[
Container(
child: Padding(
child: StreamBuilder(
stream: alimentarBloc.alimentarStream,
builder: (BuildContext context, AsyncSnapshot<List<AlimentarModel>> snapshot){
if (snapshot.hasData) {
final alimentarList = snapshot.data;
if (alimentarList.length == 0) return _imagenInicial(context);
return Container(
child: Stack(
children: <Widget>[
ListView.builder(
itemCount: alimentarList.length,
itemBuilder: (context, i) =>_crearItem(context, alimentarBloc, alimentarList[i]),
],
),
);
} else if (snapshot.hasError) {
return Text(snapshot.error.toString());
}
return Center (child: Image(image: AssetImage('assets/Preloader.gif'), height: 200.0,));
},
),
),
),
],
);
}
Widget _crearItem(BuildContext context, AlimentarBloc alimentarBloc, AlimentarModel alimentar) {
return Stack(
alignment: Alignment.centerLeft,
children: <Widget>[
Container(
child: Card(
child: ListTile(
leading: Container(,
child: Text(" ${alimentar.nombreRefEstanque}"),
),
title: Text('${alimentar.nombreAlimentoFull}'),
subtitle: Container(
child: Container(
child: Text ('$_fechaAlimentar)
),
),
onTap: () => null,
trailing: Container(
child: Text("${alimentar.consumo),
),
)
),
],
);
}
Какие варианты вы видите, чтобы отметить данные, когда они уже загружены в Интернет? Могу ли я сделать это?