#flutter #dart #flutter-animation
#flutter #dart #flutter-анимация
Вопрос:
Я работал над проектом flutter, который включал поиск элементов из базы данных SQL, а затем отображение их внутри StreamBuilder. Я хотел добавить анимацию при добавлении новых элементов с помощью пакета с именем «flutter_staggered_animations», но поскольку каждый раз, когда выполняется поиск, все элементы внутри моего ListView обновляются, и анимация происходит для каждого элемента, как я могу сделать анимацию только для новых результатов / элементов (которые не былинайдено в предыдущем поиске)? Я новичок в flutter. код для тела приведен ниже
body: StreamBuilder(
stream: _stream,
builder: (BuildContext ctx, AsyncSnapshot snapshot){
if(snapshot.data == null){
return Container(
child:Center(child: Text("Enter a search word")),
);
}
if(snapshot.data == "waiting"){
return Center(
child: CircularProgressIndicator(),
);
}
return ListView.builder(
itemCount: snapshot.data.length <= 20 ? snapshot.data.length : 20,
itemBuilder: (BuildContext context,int index){
return AnimationConfiguration.staggeredList(
position: index,
duration: const Duration(milliseconds: 375),
child: SlideAnimation(
verticalOffset: 50.0,
child: FadeInAnimation(
child: Container(
color: Colors.grey[300],
child: Padding(
padding: const EdgeInsets.all(8.0),
child: ListTile(
// leading: snapshot.data.length!=2 ? null : CircleAvatar(),
title: Text(snapshot.data[index]["word"]),
subtitle: Text(snapshot.data[index]["definition"]),
),
),
),
),
),
);
},
);
},
),