【重磅发布】flutter_chen_azlist - A–Z索引列表

Language: English | 中文简体

flutter_chen_azlist

Flutter 城市列表/联系人列表组件(支持悬停头与A--Z索引)。基于 scrollable_positioned_list

功能特性

  • 快速构建城市/联系人列表界面
  • 列表项按 A--Z 分组并支持悬停(可浮动)
  • 支持自定义 Header 与索引联动
  • IndexBar 支持自定义样式与本地图片
  • 支持滚动/跳转到指定条目
  • 索引交互可选触觉反馈(haptic feedback)

兼容性

  • Dart:>= 3.0.0 < 4.0.0
  • Flutter:推荐 3.x

安装

yaml 复制代码
dependencies:
  flutter_chen_azlist: ^3.0.0

快速开始

dart 复制代码
import 'package:flutter/material.dart';
import 'package:flutter_chen_azlist/flutter_chen_azlist.dart';

class City extends ISuspensionBean {
  City(this.name, this.tag);
  final String name;
  final String tag;
  @override
  String getSuspensionTag() => tag;
}

class DemoPage extends StatelessWidget {
  DemoPage({super.key});

  final List<City> cities = [
    City('北京', 'B'),
    City('上海', 'S'),
    City('深圳', 'S'),
  ];

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(title: const Text('AzListView Demo')),
      body: AzListView(
        data: cities,
        itemCount: cities.length,
        itemBuilder: (context, i) => ListTile(title: Text(cities[i].name)),
        susItemBuilder: (context, i) => Container(
          height: 40,
          padding: const EdgeInsets.symmetric(horizontal: 16),
          alignment: Alignment.centerLeft,
          child: Text(cities[i].getSuspensionTag()),
        ),
        indexBarOptions: const IndexBarOptions(hapticFeedback: true),
      ),
    );
  }
}

截图

示例

完整示例见 example/ 目录:

  • 运行:cd example && flutter run

Thanks

azlistview

许可

使用 MIT 协议,参见 LICENSE

相关推荐
奋斗的小青年!!1 小时前
鸿蒙使用Flutter粒子效果实战
flutter·harmonyos·鸿蒙
LawrenceLan5 小时前
Flutter 零基础入门(十一):空安全(Null Safety)基础
开发语言·flutter·dart
行者966 小时前
Flutter与OpenHarmony跨平台分享组件深度实践
flutter·harmonyos·鸿蒙
行者966 小时前
Flutter跨平台开发在OpenHarmony上的评分组件实现与优化
开发语言·flutter·harmonyos·鸿蒙
cn_mengbei8 小时前
Flutter for OpenHarmony 实战:IconButton 图标按钮详解
flutter
cn_mengbei9 小时前
Flutter for OpenHarmony 实战:OutlinedButton 边框按钮详解
flutter
2501_915918419 小时前
只有 Flutter IPA 文件,通过多工具组合完成有效混淆与保护
android·flutter·ios·小程序·uni-app·iphone·webview
JasonBoolean9 小时前
EasyDebug v0.0.4 重磅更新:原生 Http 支持 + 全新日志控制台
flutter
cn_mengbei10 小时前
Flutter for OpenHarmony 实战:TextButton 文本按钮详解
flutter