📅  最后修改于: 2023-12-03 15:12:54.289000             🧑  作者: Mango
颤振列表图块(Flutter Shimmer)是 Flutter 中一种常用的 UI 效果,它可以在页面上展示出一种颤动、闪烁的效果,非常适合用于数据加载、卡片切换等场景。
本文将介绍如何使用 Dart 语言实现颤振列表图块。
在 pubspec.yaml
中引入 shimmer
依赖:
dependencies:
shimmer: ^2.0.0
import 'package:flutter/material.dart';
import 'package:shimmer/shimmer.dart';
class ShimmerWidget extends StatelessWidget {
final double width;
final double height;
ShimmerWidget({
required this.width,
required this.height,
});
@override
Widget build(BuildContext context) {
return Shimmer.fromColors(
baseColor: Colors.grey[300]!,
highlightColor: Colors.grey[100]!,
child: Container(
width: width,
height: height,
color: Colors.white,
),
);
}
}
import 'package:flutter/material.dart';
import 'shimmer_widget.dart';
class ShimmerListWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
return ListView.builder(
itemBuilder: (context, index) {
return ShimmerWidget(
width: double.infinity,
height: 50,
);
},
itemCount: 10,
);
}
}
至此,我们已经成功地实现了颤振列表图块。
Shimmer.fromColors()
方法中提供了两个参数:
baseColor
:基础颜色,即闪烁层的底色。highlightColor
:高亮颜色,即闪烁层的高亮色。同时,我们在 ShimmerWidget
中定义了两个参数:
width
:组件宽度。height
:组件高度。颤振列表图块是 Flutter 中一种常用的 UI 效果,它可以为我们的应用增添不少动态感。当然,如果在页面数据完全加载完成后,也要及时将该效果去除,否则可能会给用户造成困扰。
在 Dart 中实现颤振列表图块,主要需要用到 shimmer
依赖,并结合 Shimmer.fromColors()
和自定义 ShimmerWidget
进行实现。
在应用开发过程中,可以适时地加入该效果,让应用更加生动有趣。