一个 SwiftUI 包,提供一个可重用的视图用于显示集合

AlphabetScrollBar

AlphabetScrollBar 是一个 SwiftUI 程序包,用于提供一个可重复使用的视图,以便以字母顺序排列的方式显示项目集合。它允许你将集合显示为一个列表或一个网格,其中部分标题代表字母索引。

特性

  • 按字母顺序对集合中的项目进行分组。
  • 以带有字母标题的列表或网格形式显示集合。
  • 易于使用,并可使用你自己的单元格视图进行自定义。

要求

  • Swift 5.3+
  • iOS 15.0+

安装

你可以使用 Swift 包管理器将 AlphabetizedList 添加到你的项目。要添加它,请按照以下步骤操作:

  1. 在 Xcode 中,打开你的项目或工作区。
  2. 转到文件>Swift 包>添加包依赖项。
  3. 输入存储库 URL:(https://github.com/Salubrejoe/AlphabetScrollBar.git)
  4. 点击下一步,然后选择要使用的版本规则。
  5. 点击完成。

用法

要在你的 SwiftUI 项目中使用 AlphabetizedList,请按照以下步骤操作:

  1. 导入程序包:

import SwiftUI
import AlphabetScrollBar

将你的模型类型与 Alphabetizable 协议一致:



struct Country: Alphabetizable {
    var id: String { self.name }
    let name: String
}

创建一个 AlphabetizedList 视图实例:



let countries: [Country] = [
    // ... your collection of Country instances ...
]

var body: some View {
    AlphabetizedList(
        collectionDisplayMode: .asList, // or .asGrid
        collection: countries,
        sectionHeaderFont: .headline,
        sectionHeaderForegroundColor: .primary,
        resultAnchor: .top,
        cell: { country in
            // Customize your cell view here based on the 'Country' model.
            Text(country.name)
        }
    )
}

许可

通过调整 sectionHeaderFont、sectionHeaderForegroundColor 和单元格视图自定义外观。 许可

该程序包在 MIT 许可下发布。有关更多信息,请参阅许可。

致谢

AlphabetizedList 包的灵感来自于需要一个易于使用的 SwiftUI 视图来显示按字母顺序排列的集合。

贡献

欢迎贡献!如果你有任何错误报告、功能请求或建议,请创建问题或提交拉取请求。

GitHub

点击跳转